解析错误:语法错误,意外';'在/home/realcas/public_html/eshop/ecms/system/classes/database.php第29行
这是第29行 的代码return empty($resultArray) ? "Error in Query " ? json_encode($resultArray);
这是问题所在的代码段
public function select($table,$options,$where,$orderby)
{
$options = empty($options) ? "*" : $options;
$where = empty($where) ? "1=1" : $where;
$orderby = empty($orderby) ? "" : $orderby;
$qry = "SELECT $options FROM $table WHERE $where $orderby ";
$result = mysql_query($qry) or die(json_encode(array("error",mysql_error())));
while(($resultArray[] = mysql_fetch_assoc($result)));
return empty($resultArray) ? "Error in Query " ? json_encode($resultArray);
return json_encode($resultArray);
}
你可能想要这个
return empty($resultArray) ? "Error in Query " : json_encode($resultArray);
因为它是
($condition) ? "condition is true" : "condition is false";
我看到你已经在用它了,所以我认为这只是一个打字错误
也删除这一行
return json_encode($resultArray);
,因为它是不必要的,永远不会发生。此外,我不确定你的while循环是正确的。
结果public function select($table,$options,$where,$orderby)
{
$options = empty($options) ? "*" : $options;
$where = empty($where) ? "1=1" : $where;
$orderby = empty($orderby) ? "" : $orderby;
$qry = "SELECT $options FROM $table WHERE $where $orderby ";
$result = mysql_query($qry) or die(json_encode(array("error",mysql_error())));
while(($row = mysql_fetch_assoc($result))){ $resultArray[] = $row; }
return count($resultArray) < 1 ? "Error in Query " : json_encode($resultArray);
}
首先,您不需要最后一个return
语句,它已经在前面的三元运算符中包含了。
其次,另一个return
应该是这样的:
return empty($resultArray) ? "Error in Query " : json_encode($resultArray);