在我的本地計算機上托管后,一切正常。除非我搜索數據庫中不可用的數據,否則我想收到錯誤消息“在此表上找不到結果”。請檢查代碼。當我們搜索無效值時,不會彈出未找到結果錯誤。獲取.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 關注
- 90 瀏覽
添加回答
舉報
0/150
提交
取消