2017-05-03 24 views
1

我有幾個API-s用於在我的網站上用JSON響應執行一些操作。由於PHP文件只能通過AJAX訪問,所以我想改變顯示錯誤的方式。處理JavaScript使用的API的數據庫錯誤

目前,如果發生錯誤確實是這樣的

die('Getting Result Error: (' . $this->sql->errno . ') ' . $this->sql->error); 

因此,這將永遠不會給用戶(網站所有者),因爲JavaScript是處理JSON響應

我在考慮切換到error_log

error_log('Getting Result Error: (' . $this->sql->errno . ') ' . $this->sql->error, 0); 

這是一個更好的做法嗎?你有什麼建議。

而且我想只是在做這個

error_log('Getting Result Error: (' . $this->sql->errno . ') ' . $this->sql->error, 0); 
header('Content-Type: application/json'); 
$arr = array("status"=>'error'); 
echo json_encode($arr, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE); 

所以我通知我的劇本的東西是錯誤的,用戶本身這個錯誤,與本站老闆看到它在錯誤日誌。

回答

2

error_log具有將消息發送到指定的電子郵件地址的選項:

$admin='[email protected]'; 
$headers= …;  // as per mail() function 
error_log($error,1,$admin,$headers); 

這將通知管理員。

我認爲你可能會跟着這種消息回到用戶。