2017-08-24 73 views
-1

我正在使用以下PHP代码从数据库检索商店信息字段,但在运行PHP时遇到下面显示的错误。无法检索数据库中的输出数据

<?php 
include ('database.php'); 


$locLat ; 
$locLng ; 
$shopName; 
$shopContact; 

$sql = "SELECT s_iD, s_name,s_contNo,s_lat,s_long from tbl_shop"; 

$result = mysqli_query($con,$sql); 
$arrayResult = array(); 

while ($row = mysqli_fetch_array($result)){ 
    array_push($arrayResult,array("id"=>$row['s_iD'],"shopName"=>$row['s_name'],"shopContact"=>$row['s_contNo'],"latitude"=>$row['s_lat'], 
     "longitude"=>$row['s_long'])); 
} 

echo json_encode (array('result'=> $result)); 


mysqli_close($con); 

但是输出总是:

{ “结果”:{ “current_field”:NULL, “场计数”:NULL, “长度”:NULL, “NUM_ROWS”:NULL,”类型“:空}}

+2

你的数组被称为'$ arrayResult'但你产生JSON的时候使用'$ result' – Jens

+0

另外它非常不清楚'current_field'等等来自 – Jens

+0

您应该使用mysqli_fetch_row代替mysqli_fetch_array – GnarfDwarf

回答

1

这里是你更新的代码应该是:

<?php 
include ('database.php'); 


$locLat ; 
$locLng ; 
$shopName; 
$shopContact; 

$sql = "SELECT s_iD, s_name,s_contNo,s_lat,s_long from tbl_shop"; 

$result = mysqli_query($con,$sql); 
$arrayResult = array(); 

while ($row = mysqli_fetch_array($result)){ 
    array_push($arrayResult,array("id"=>$row['s_iD'],"shopName"=>$row['s_name'],"shopContact"=>$row['s_contNo'],"latitude"=>$row['s_lat'], 
     "longitude"=>$row['s_long'])); 
} 

echo json_encode (array('result'=> $arrayResult)); // <-- changed from $result 


mysqli_close($con);