1. 程式人生 > 其它 >2020/12/04 a引數不能為空/a引數錯誤

2020/12/04 a引數不能為空/a引數錯誤

2020/12/04
a引數、介面ip以及前後臺文件已經確認無誤,但還是報了個莫名其妙的a引數為空。經檢視發現是資料庫無法連線(哦,是嗎?),導致前臺傳送請求,後臺無法訪問資料庫,在入口檔案index.php就已經報錯,所以只要連上資料庫問題就能迎刃而解。
我的解決方法是:將備份的資料庫檔案寫入一個新建的資料庫裡面,再到後臺修改連線資料庫的資訊即可。
那麼問題來了,解決了嗎?答案是:沒有。那究竟是怎麼回事呢。
剛開始我以為是資料庫連線不上,我新建了個數據庫,並且重複測試確認資料庫無誤後,我就往回想了一下。a引數明明已經寫入,資料庫、介面ip也是正確的。問題出在哪裡呢?
既然是出在a引數身上,那麼就定位到他的位置,重複檢視幾遍,發現是判斷a引數是否為空的一個過濾字元函數出了問題,將這個函式禁用,a引數就不報空了。
但是問題並沒喲有解決,判斷引數是否為空的函式需要進一步去完善他的邏輯。所以在接下來的工作要將這個問題一併解決了。

2020/12/09

哪裡跌倒就從哪裡站起來,定位到chexInput這個函式身上,該函式程式碼如下:

function checkInput($value) {
global $mysqli;

if ($mysqli) {
echo 666;
$value = $mysqli->real_escape_string($value);
} else {
echo 2333;
$value = mysql_real_escape_string($value);
}
return $value;
}

如上所述,我逐行列印,發現它打印出了666,就再往上推,$mysqli是連線資料庫的一個變數,我就猜是不是資料庫連線有問題,果不其然!小爺我一樣就看見了資料庫連線的資訊不正確(資料庫名寫錯了),遂改即成,問題歐了。