好吧,所以这里什么都没有。
网址:http://tandemenvoy.michaeldvinci.com/forum/repliesJSON.php?rID=2绝对没有回复我。如果我将SQL查询硬编码为
"SELECT * FROM replies WHERE replyID = 2"
我得到了正确的JSON格式化请求,但是当我尝试将其作为URL中的参数传递时。只是没有显示 -
现在我这样做的原因是因为我正在研究一个横跨多个表的iOS应用程序,我需要它只显示匹配的'replyTopic'到'categoryID',我猜我是否可以使用正确的查询将categoryID附加到网址的末尾,这将是一件容易的事情
repliesJSON.php:
<?php
$con=mysqli_connect("localhost","","","");
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$rID = $GET_['rID'];
$sql = "SELECT * FROM replies WHERE replyID = '".$rID."' ";
if ($result = mysqli_query($con, $sql))
{
$resultArray = array();
$tempArray = array();
while($row = $result->fetch_object())
{
$tempArray = $row;
array_push($resultArray, $tempArray);
}
echo json_encode($resultArray);
}
mysqli_close($con);
?>
答案 0 :(得分:0)
$rID = $GET_['rID'];
应该是
$rID = (int)$_GET['rID'];
主要错误是你的get var中的拼写错误。 我还将你的getvar转换为整数,因为你没有使用任何准备状态。
答案 1 :(得分:0)
因为你的Mysql语句用双引号括起来,PHP会解析变量,这意味着'".$rID."'
输出为&#39; 2&#39; (带单引号)因为PHP忽略双引号并连接单引号和数字2。
只需将WHERE replyID = '".$rID."'
更改为: WHERE replyID = '$rID'
即可解决此问题。
修改强>
你也可以完全忽略@steven提到的单引号:
WHERE replyID = $rID