2012-10-11 48 views
0

在我們的PHP應用程序中,當前mysql查詢錯誤(語法錯誤,唯一鍵的重複輸入錯誤)不會拋出PHP錯誤,腳本執行仍在繼續,這很好。設置爲導致嘗試重複輸入唯一字段的PHP錯誤?

我只想知道在上述情況下什麼設置(如果它可以通過設置控制)可以停止腳本執行,以便我們知道並且不會在不知不覺中誤操作。

我剛纔讀到這個問題MySQL - ignore insert error: duplicate entry,這是爲了避免重複登錄嘗試在唯一字段上的錯誤。 @zombat的回答中提到,使用insert ... ignore會在發生重複數據輸入嘗試時導致警告而不是錯誤。所以,這似乎是一個重複的輸入嘗試(使用insert而不是insert ... ignore)導致PHP錯誤並停止腳本執行。這是默認行爲嗎?

我沒有得到PHP錯誤,在第一個地方。那麼,我如何得到它們?

回答

1

你應該顯示一些代碼。

但幾個可能性:

你可能有問題的命令之前使用帶有@錯誤surpression。

你有一個可讓腳本繼續的定製錯誤處理程序。

您使用異常而不是錯誤,並捕獲它們。

這裏閱讀:http://php.net/manual/en/function.set-error-handler.php

我們確實需要一些代碼,一些設置。你可以掃描你的項目的字符串:set_error_handler

相關問題