5

えーと、何を間違えたのかわかりません。

このコード:

        try {
            $this->CONN = new \PDO('mysql:dbname='.PASTEAES_DBNAME.';host='.PASTEAES_SERVER, PASTEAES_USERNAME, PASTEAES_PASSWORD);
            $this->CONN->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 
        } catch(PDOException $e) {
            $this->raiseError('Fatal MySQL error', $e->getMessage());
        }

これを私に報告します:

Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[42000] [1049] Unknown database 'pasteaes'' in /var/www/pasteaes/common/class.pasteaes.php on line 25

しかし、ご覧のとおり、それは明らかに試行錯誤のブロックにあります。

この特定のコードが含まれるクラスは名前空間化されているため、上記で共有したコードの2行目で「PDO」の代わりに「\PDO」を使用しました。

そして、そうそう、私はDBが存在しないことを知っていますが、それでも将来これが発生することを望んでいません(そうなるとは限りません)。エラーを適切に処理したい:(

4

1 に答える 1

13
catch(\PDOException $e)
      ^
于 2012-12-29T10:07:43.633 に答える