За последние 24 часа нас посетили 17834 программиста и 1622 робота. Сейчас ищут 1285 программистов ...

Быстрый поиск для сайта (Помогите решить задачу)

Тема в разделе "JavaScript и AJAX", создана пользователем D0Gmatist, 12 дек 2013.

  1. D0Gmatist

    D0Gmatist Активный пользователь

    С нами с:
    3 июн 2012
    Сообщения:
    60
    Симпатии:
    0
    Код (Text):
    1. <input type="text" name="search" id="search" />
    2. <div id="searchResult"></div>
    Код (Text):
    1. $('#search').keyup(function(){
    2.     var Value = $('#search').val();
    3.     $.get("/index_js.php?js=search", { search: Value }, function(data) {
    4.         $("#searchResult").html(data);
    5.     });
    6. });
    Для проверки в php задал
    Код (Text):
    1. $search = $_GET['search'];
    2. echo "<strong>" . $search . "</strong>";
    Код (Text):
    1. alert(Value);
    Отлавливает данные но дальше тишина
    Но ничего не возвращает
     
  2. Ke1eth

    Ke1eth Активный пользователь

    С нами с:
    16 мар 2012
    Сообщения:
    1.073
    Симпатии:
    11
    Адрес:
    заблудилса
    1) Поставить Firebug
    2) Смотри в Firebug, активность, что там вообще уходит / приходит
    3)
    Код (Text):
    1.  
    2. $('#search').keyup(function(){
    3.     var Value = $('#search').val();
    4.     $.get("/index_js.php?js=search", { search: Value }, function(data) {
    5.         alert(data);
    6.         $("#searchResult").html(data);
    7.     });
    8. });
     
  3. smus

    smus Новичок

    С нами с:
    6 мар 2015
    Сообщения:
    3
    Симпатии:
    0
    Всем привет! Похожая задача: имеется рабочий код мгновенного поиска jquery+php+mysql, но только по одному параметру(по одному полю в mysql-таблице), нужно организовать возможность поиска по нескольким атрибутам. Проще говоря, отмечая чекбоксы в форме пользователь производит поиск по заданным параметрам(n-ному числу полей в mysql-таблице). Подскажите, как это лучше сделать?
     
  4. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
  5. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.115
    Симпатии:
    1.244
    Адрес:
    там-сям
  6. smus

    smus Новичок

    С нами с:
    6 мар 2015
    Сообщения:
    3
    Симпатии:
    0
    Спасибо за линки! Почитал, ознакомился, но не совсем всё понял. Народ, вы сильно не злитесь: я и в JS и JQ практически новичок,
    поэтому можно я лучше выложу код? Это рабочий код c одним атрибутом для поиска: form.php - файл с формой и JQ, а search.php получает запрос и генерит SQL. Чекбоксы пока просто повставлял: они ни на что не влияют и пока дал им имя массива p. Как я уже отмечал поиск должен быть по n-ому количеству атрибутов, где n >= 1. Меня больше всего интересует, как будут передаваться значения чекбоксов и как потом в зависимости от этого менять SQL-запрос. Заранее благодарен за помощь!
    Код (Text):
    1.  
    2. form.php
    3. <script>
    4. function showHint(str)
    5.     {
    6. if (str != "")
    7.   {
    8.   $.post("search.php", {ls:str}, function(data)
    9.      {
    10.  $("#results").empty().append(data);
    11.  });
    12.   }
    13. else
    14.        {
    15.   $("#results").empty();
    16.   }
    17.     }
    18. </script>
    19. <form onsubmit="showHint(document.getElementById('txt').value);return false" method="post" action="test.php">
    20.  <table align="center">
    21.  <tr>
    22.  <td align="center">
    23.  <input type="search" id="txt" name="ls" onkeyup="showHint(this.value)" onkeydown="showHint(this.value)"  autofocus autocomplete="off">
    24.  </td>
    25.  </tr>
    26.  <tr>
    27. <td>
    28. <input type="checkbox" name="p[]" checked>p1
    29. <input type="checkbox" name="p[]">p2
    30. <input type="checkbox" name="p[]">p3
    31. </td>
    32. </tr>
    33.  </table>
    34. </form>
    35. <span id="txtHint"></span>
    36.  <div id="results"></div>  
    37. search.php
    38. include("dbconfig.php");
    39.    $ls=$_POST['ls'];
    40.    $sql=mysql_query("SELECT * FROM companies WHERE name LIKE '" .$ls. "%' ") or die(mysql_error());
    41.    $i=0;
    42.    $rowsnumber=mysql_num_rows($sql);
    43.    while($row=mysql_fetch_array($sql))
    44.      {
    45.        echo $row['name'];
    46.      }
     
  7. smus

    smus Новичок

    С нами с:
    6 мар 2015
    Сообщения:
    3
    Симпатии:
    0
    Допустим, даже если у каждого чекбокса будет уникальное имя - ведь за незнанием сколько атрибутов будет у поиска, имхо, мне всё равно придётся значения запихивать в массив, а его потом считать и читать в файле обработки. Вроде так, если не ошибаюсь.