0

mySQLからPDO呼び出しに変更したとアドバイスされたのですが、以下のように実際のデータベースへのアクセスを通過できないようです。

$db = new PDO("mysql:host=localhost;dbname=info;charset=UTF-8", 'admin', 'xxxxxx');

それが戻るように

Parse error: syntax error, unexpected T_VARIABLE in db.php on line 8

私はフォーラムをチェックしました、そして私が読んだことからサーバーはPDOをサポートします、さらにphpinfo()セキュリティ上の理由で無効になっているので私はそれに頼ることができません、私は実際に文字列にエラーを犯しましたか、それとも私のサーバーがそうではないことを意味しますかまだPDOをサポートしていますか?

4

3 に答える 3

0

最後の2つのパラメーターは、一重引用符で囲むか、変数自体にする必要があります。つまり(新しいPDO( "stuffhere"、$ user、$ pass)

編集 これを試してください:ApacheインストールでPDOサポートが有効になっているかどうかを確認するにはどうすればよいですか?

if (!defined('PDO::ATTR_DRIVER_NAME')) {
    echo 'PDO unavailable';
}
elseif (defined('PDO::ATTR_DRIVER_NAME')) {
    echo 'PDO available';
}
于 2012-10-13T10:11:19.457 に答える
0

行のどの部分にエラーがあるかをよりよく理解するために、それを複数の行に分割することができます。例えば

 8. $db = new PDO("mysql:host=localhost;dbname=info;charset=UTF-8", 'admin', 'xxxxxx');

次のように変更できます:

 8. $db = new PDO(
 9. "mysql:host=localhost;dbname=info;charset=UTF-8",
10. 'admin',
11. 'xxxxxx');

これで、エラーが報告される行は8、9、10、または11になる可能性があり、何が問題であるかをより正確に知ることができます。

于 2012-10-13T10:17:04.383 に答える
0

問題のある行を最初から書き直して、古い行を完全に削除してみてください。私が直面しているいくつかの問題がありましたunexpected T_VARIABLE-明白な理由のないエラー。これは、ラップトップのキーボードでなんらかのキーの組み合わせを使用できたためだと思います。これにより、コードに表示されない文字が含まれるようになります。

行を書き直した後、問題は通常なくなります。

于 2012-10-13T10:30:48.283 に答える