在我的本地计算机上托管后,一切正常。除非我搜索数据库中不可用的数据,否则我想收到错误消息“在此表上找不到结果”。请检查代码。当我们搜索无效值时,不会弹出未找到结果错误。获取.php <?php//fetch.php$connect = new PDO("mysql:host=localhost;dbname=testing", "root", "");$output = '';$query = '';if(isset($_POST["query"])){ $search = str_replace(",", "|", $_POST["query"]); $query = " SELECT * FROM tbl_customer WHERE CustomerName REGEXP '".$search."' OR Address REGEXP '".$search."' OR City REGEXP '".$search."' OR PostalCode REGEXP '".$search."' OR Country REGEXP '".$search."' ";}else{ $query = " SELECT * FROM tbl_customer ORDER BY CustomerID ";}$statement = $connect->prepare($query);$statement->execute();while($row = $statement->fetch(PDO::FETCH_ASSOC)){ $data[] = $row;}echo json_encode($data);?>
1 回答
呼唤远方
TA贡献1856条经验 获得超11个赞
在 Fetch.php 中,变量 $data 仅在找到一个或多个答案时才存在。否则,var $data 仍然不存在于最后一行: json_encode($data); 如果您打开 error_reporting,它会向您显示一条有关“第 X 行未定义的 var 数据”的消息。
PHP 会原谅你,假设 $data 的值为 NULL;所以你会得到一个 json_encoded 形式或 NULL。
因此,如果您将其放入 Fetch.php 的顶部,它将始终存在并且是一个空数组或一个填充数组。
这将避免在 Javascript 中出现无法读取 NULL 长度的错误。然而,空数组的长度 = 0。
- 1 回答
- 0 关注
- 64 浏览
添加回答
举报
0/150
提交
取消