Javascript ajax不工作,也不显示php数据
当一条记录显示数据时,当多条记录出现时,则不显示其他站点的数据。 ajaxx.phpJavascript ajax不工作,也不显示php数据,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,当一条记录显示数据时,当多条记录出现时,则不显示其他站点的数据。 ajaxx.php <?php include 'database.php'; session_start(); $post = $_POST; $search = $post['search']; $searchType = $post['searchType']; if ($searchType == 'all')
<?php
include 'database.php';
session_start();
$post = $_POST;
$search = $post['search'];
$searchType = $post['searchType'];
if ($searchType == 'all')
{$sql = "SELECT DISTINCT title FROM hadees WHERE title LIKE '$search%' AND (type='Bukhari' OR type='Muslim') ";}
else
{$sql = "SELECT DISTINCT title FROM hadees WHERE title LIKE '$search%' AND type='$searchType' ";}
$result = mysqli_query($db,$sql);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
$row['title'];
echo json_encode($row);
}
} else
{ echo "Not Found Result" ; }
?>
我认为你的问题在while循环中。您不想一行一行地编码每一行,但作为一个整体,就像这样
$myResults = [];
while($row = $result->fetch_assoc()) {
$row['title'];
$myResults[] = $row;
}
echo json_encode($myResults);
您正在使用
echo JSON\u encode($row)生成无效的JSON代码>在循环中
尝试创建一个行数组,然后显示它
if($result->num_rows > 0)
{
$output = array();
while($row = $result->fetch_assoc())
{
output[] = $row;
}
if($searchType == 'all')
{
echo json_encode($output);
}
else
{
echo json_encode(current($output)); // print just one
}
}
if($result->num_rows > 0)
{
$output = array();
while($row = $result->fetch_assoc())
{
output[] = $row;
}
if($searchType == 'all')
{
echo json_encode($output);
}
else
{
echo json_encode(current($output)); // print just one
}
}