2013-09-14 4 views
0

Я отправляю это снова, поскольку я не мог заставить кого-то помочь мне. У меня есть автозаполнение jquery, отлично работающее с mysql, однако я попытался изменить его на подготовленные команды mysqli, но это не сработает. Может кто-нибудь указать мне, что происходит не так?jquery autocomplete не работает php

MySQL:

<?php 
mysql_connect("localhost","root",""); 
mysql_select_db("database"); 

$term=$_GET["term"]; 

$query=mysql_query("SELECT * FROM products1 where title like '%".$term."%' order by id "); 
$json=array(); 

    while($student=mysql_fetch_array($query)){ 
     $json[]=array(
        'value'=> $student["title"], 
        'label'=>$student["title"] 
         ); 
    } 

echo json_encode($json); 

?> 

То, что я пытался с MySQLi подготовил заявления:

<?php 
$mydb = new mysqli('localhost', 'root', '', 'database'); 
$q = '%'.$_POST['term'].'%'; 
$stmt = $mydb->prepare(" SELECT * from products1 where title LIKE ? "); 
echo $mydb->error; 
$stmt->bind_param('s', $q); 
$stmt->execute(); 
?> 
<?php 
$result = $stmt->get_result(); 
while ($row = $result->fetch_assoc()) { 
$json[]=array(
      'value'=> $student["title"], 
      'label'=>$student["title"] 
          ); 


} 
echo json_encode($json); 

?> 

ответ

0

изменить эти строки

'value'=> $student["title"], 
      'label'=>$student["title"] 

к

'value'=> $row["title"], 
      'label'=>$row["title"] 

и вы должны быть через

вы звоните $ студента, в то время как выборка в $ строке

+0

не везло до сих пор. не работает. – amdvb

+1

интересно, в коде выше у вас есть $ term = $ _ GET ["term"]; и в приведенном ниже коде есть $ q = '%'. $ _ POST ['term']. '%'; , можете ли вы изменить $ _POST на $ _GET – Satya

+0

. О, да, это изменило, но больше не работает. – amdvb

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