2014-09-12 2 views
-1

У меня есть следующий в моем HTML:Bootstrap машинописный с MySQL не работает

<td> 
     Maintenance Provider 
    </td> 
    <td> 
     <input type=text name='maintenance' id='maintenance'/> 
    </td> 
    </tr> 
</table> 

У меня есть следующий в JS, который использует Bootstrap машинописным:

$(function() { 
    $('#maintenance').typeahead({ 
     source: function (query, process) { 
      return $.getJSON(
       '/processing.php?search_preencoded=Y', 
       { query: query }, 
       function (data) { 
        return process(data); 
       } 
      ); 
     } 
    }); 
}); 

И код processing.php фрагмент кода:

if(isset($_GET['search_preencoded'])){ 
    $db2=new mysqli("localhost","root","","external"); 
    $sql="select * from preencoded where content like '".$_POST['query']."%%'"; 
    $rs=$db2->query($sql); 
    $nm=$rs->num_rows; 
    for($i=0;$i<$nm;$i++){ 
     $row=$rs->fetch_assoc(); 

     $data[]=$row['content']; 

    } 
    echo json_encode($data); 
} 

Но когда я печатаю содержание, которое предположительно в базе данных, машинописный не работает! Обратите внимание, что таблица имеет только два поля: код и содержимое.

Что я делаю неправильно?

+0

любые ошибки консоли ??? –

+0

Я думаю, вы не ссылались на typeahead.js на своей странице ... скачать его здесь https://github.com/twitter/typeahead.js –

+0

, но typeahead работает. если я помещаю массив в исходный код: вместо функции он отлично работает –

ответ

1

Я думаю, что ваш LIKE неправильно попробовать:

$sql = "select * from preencoded where content like '%" . $_POST['query'] . "%'"; 

Взгляните - http://www.tutorialspoint.com/mysql/mysql-like-clause.htm

В зависимости от того, какой тип поиска вы хотите, вы будете нуждаться в% до, после или до и после $ _POST ['query'].

Также отформатируйте свой вопрос, чтобы его было легче читать.

Смежные вопросы