0

I am creating a PDO object like this:

try {                                      
   $dbh = new PDO( "mysql:host=$host;dbname=$db_name" , $user, $passwd );     
} catch( PDOException $e ) {
   echo 'Caught exception: ', $e->getMessage(), "\n";
   die();
}

but there are no errors, no Exceptions and the PDO object doesn't have anything in it:

var_dump( $dbh );

outputs:

object(PDO)#5 (0) {
}

Username/password and database name are all correct.

Many thanks.

4

3 に答える 3

5

これは、動作する PDO オブジェクトである必要があります。確認のために使ってみてください。

それが「間違って構築された」と思った理由は何ですか?

于 2012-10-29T13:25:24.100 に答える
0

PDOがサーバーにインストールされているかどうかをphpinfo()関数で確認してください。PDOがサーバーにインストールされている場合は、次の方法を使用してデータベースに接続します。

 $dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass);

ホスト:ローカルホストまたはサーバーに依存します。

dbname:データベース名

$ user:データベースユーザー名

$ pass:データベースパスワード

于 2012-10-29T13:35:09.617 に答える
0

pdo接続のためにこれを試してください

    <?php
/* Connect to an ODBC database using driver invocation */
$dsn = 'mysql:dbname=testdb;host=127.0.0.1';
$user = 'dbuser';
$password = 'dbpass';

try {
    $dbh = new PDO($dsn, $user, $password);
} catch (PDOException $e) {
    echo 'Connection failed: ' . $e->getMessage();
}

?>

これを実行すると、vardump($dbh) が次のように取得されます。

= オブジェクト(PDO)#1 (0) { } =

参考:こちら

于 2012-10-29T13:25:28.187 に答える