2016-05-12 7 views
0

Hallo ich bin neu in PDO ich hoffe, jemand kann meine Neugier auf diesem einen, ich versuche, eine Verbindung in mysql mit PHP mit PDO, aber wenn ich diesen Code bereits machen den Browser zeigt keine Fehler alle tut gut, aber als ich versuchte, den Datenbanknamen absichtlich falsch zu machen, zeigte der Browser überhaupt keinen Fehler und ich bin nur neugierig, ob ich es wirklich richtig mache?Warum hat PDOException in meinem Browser keinen Fehler angezeigt?

+0

Erfahren Sie mehr über Fehlerberichte in PHP. Wenn es in den Servereinstellungen (php.ini) deaktiviert ist, wird bei einem kritischen Fehler kein Fehler angezeigt, sondern eine leere Seite. Aber folgen Sie der Antwort des Kumpels unten, Sie können Warnungen und Ausnahmen bekommen, die den Code in Ihre PHP-Datei einfügen, aber keine kritischen Fehler oder Syntaxfehler. – Bsienn

Antwort

1

Nur weil Ihre Fehlermeldung falsch ist.

You should not catch error exceptions to show them in the browser - PHP kann es schon für Sie tun.

Also, machen Sie Ihre Klasse auf diese Weise

class MyConnection { 

    protected $username = 'root'; 
    protected $password = ''; 
    protected $host = 'localhost'; 
    protected $db_name = 'testdbewewewewe'; 

    public function connection() { 
      $this->dbh = new PDO("mysql:host=". $this->host . ";dbname=".  $this->db_name, $this->username, $this->password); 
    } 
} 

Dann PHP sagen Fehler im Browser anzuzeigen,

error_reporting(E_ALL); 
ini_set('display_errors', 1); 

$conn = new MyConnection(); 
$conn->connection(); 

Und haben Ihre Ausnahme der ersten Klasse gezeigt.

Verwandte Themen