在早期它的一些點出現有太多的SQL連接其次爲回顯篩查的任何人一直在尋找:錯誤,使用PDO連接到mysql的連接太多,顯示我們的db用戶名和密碼?
PHP Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[08004] [1040] Too many connections' in /dir/file.php:21
Stack trace:
#0 /dir/file.php(21): PDO->__construct('mysql:host=loca...', 'the user', 'password')
正如你可以看到,它打印的用戶名和密碼。
我是新來的PDO連接到數據庫的形式,我進入它,因爲人們告訴我,我的常規mysql_connect形式是不安全的。但是,默認情況下,當mysql_connect有太多的連接時,永遠不會將用戶名和密碼輸出到屏幕上。
真是一場災難。
如果出現錯誤,我該如何停止PDO?
我使用:
$dbh = new PDO('mysql:host=localhost;dbname=' . $db, $user, $pass);
你有沒有碰巧圖這一個出來? – hafichuk
我同意這是一個問題,應該提交給PDO團隊。請在出現錯誤時投票隱藏憑據:http://bugs.php.net/bug.php?id=62184 – IMB
好的 - 會的。雖然看起來很奇怪,甚至應該有投票的需要 - 它只是在默認打印用戶名和密碼憑證的錯誤信息荒謬!尤其是當顯然,至少我對PDO的理解是爲了更安全地訪問數據庫!超級失敗。 – willdanceforfun