0
我有一個PHP自定義錯誤處理程序,除了運行數據庫查詢之外,它執行它應該執行的所有操作。代碼是PHP自定義錯誤處理程序將不會運行SQL查詢
public function fatalErrHandlr(){
$errstrArr = error_get_last();
$errno = $errstrArr['type'];
$errstr = $errstrArr['message'];
$errfile = $errstrArr['file'];
$errline = $errstrArr['line'];
$query = "INSERT INTO `err` (`errno`, `errstr`, `errfile`, `errline`) VALUES ('$errno', '$errstr', '$errfile', '$errline')";
mysqli_query($this->dbc, $query);
echo("<b>There was an error. Check the database.</b>");
return true;
}
當我運行這個,它應該把錯誤在數據庫中,但沒有添加到表中。我確實在phpMyAdmin中運行了查詢,並且在那裏沒有錯誤。
嘗試打印您的查詢並查看它是如何形成的。這會給你一個想法,如果有什麼錯誤。 – Rahul
我會再次分離您的自定義錯誤處理程序並向數據提供errstrArr數組,然後單獨運行您在此處編寫的代碼以查看它是否實際引發錯誤,從而開始調試。 – BlackCetha
'var_dump(mysqli_error($ this-> dbc));'查看錯誤 – CodeGodie