我再次发布此消息,因为我无法让某人帮助我。 我有jquery自动完成工作正常与mysql,但我尝试将其更改为mysqli准备语句,但这不起作用。有人能指出我出了什么问题吗?
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 :(得分:0)
更改这些行
'value'=> $student["title"],
'label'=>$student["title"]
到
'value'=> $row["title"],
'label'=>$row["title"]
你应该通过
你正在调用$ student,而在$ row
中获取