我正在使用最新版本的php 7.1。在此PHP脚本中获取成功响应的空结果。但是如果我们使用 print_r 在输出中显示数组值。
<?php
include 'dbconn.php';
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$inputJSON = file_get_contents('php://input');
$data=json_decode($inputJSON, true);
$email=$data['providerEmail'];
$password=$data['providerPassword'];
if($data){
$sql="select * from en_providers where providerEmailAddress='".$email."' and providerPW='".$password."'";
$result = mysqli_query($con,$sql) or die("Error in Selecting " . mysqli_error($connection));
$row =mysqli_fetch_assoc($result);
$providerID=$row['providerID'];
$sql1="select * from en_venues where providerID='".$providerID."'";
$result1 = mysqli_query($con,$sql1) or die("Error in Selecting " . mysqli_error($connection));
while($row1['Doctorid'][] =mysqli_fetch_assoc($result1)){
$merge=array_merge($row,$row1);
}
if($row){
header('WWW-Authenticate: Digest',true,200);
$list=$merge;
echo json_encode($list);
}
else
{
header('WWW-Authenticate: Digest');
header('HTTP/1.1 401 Unautherised', true, 401);
$er='Invalid Username/Password';
$return['error']=$er;
echo json_encode($return);
}
}
else
{
header('WWW-Authenticate: Digest');
header('HTTP/1.1 401 Unautherised', true, 401);
$er='Invalid Username/Password';
$return['error']=$er;
echo json_encode($return);
}
}
?>
如何在json响应中打印数组值。
请帮我解决这个问题。谢谢
答案 0 :(得分:0)
请使用方法json_last_error_msg
检查错误$inputJSON = file_get_contents('php://input');
$data=json_decode($inputJSON, true);
if (!is_array($data) || empty($data)) {
throw new Exception(json_last_error_msg());
}
这应该解决问题,错误地去了。如果仍然不知道,那么用输出更新你的帖子。