0

私は自分のデータベースにphpで接続しようとしましたが、完全に失敗しました;(私は次のようなものを取得し続けます: "PHP Notice: Undefined variable: conn" 次のそれぞれを試しました:

$conn = new PDO("mysql:host=localhost;dbname=ar_data", 'login', 'pass');
$conn = mysqli('localhost', 'login', 'pass', 'dbname') or die("error" :.mysqli_connect_error());
$conn = mysqli_connect('localhost', 'login', 'pass', 'ar_data') or die("error" :.mysqli_connect_error());

最後のものを試した後、次のようになりましたvar_dump($conn)

object(mysqli)#17 (18) { ["affected_rows"]=> int(0) ["client_info"]=> string(78) 
"mysqlnd 5.0.8-dev - 20102224 - $Id: SOME_VALUE_I_AM_CENSORING $" 
["client_version"]=> int(50008) ["connect_errno"]=> int(0) ["connect_error"]=> NULL 
["errno"]=> int(0) ["error"]=> string(0) "" ["field_count"]=> int(0) ["host_info"]=> 
string(20) "localhost via TCP/IP" ["info"]=> NULL ["insert_id"]=> int(0) ["server_info"]=>
string(6) "5.5.25" ["server_version"]=> int(50525) ["stat"]=> string(140) "Uptime: 477847 
Threads: 6 Questions: 202259 Slow queries: 1 Opens: 1454 Flush tables: 1 Open tables: 10 
Queries per second avg: 0.423" ["sqlstate"]=> string(5) "00000" 
["protocol_version"]=> int(10)
["thread_id"]=> int(1506) ["warning_count"]=> int(0) }

また、ar_data データベースに対する権限を持たないユーザーを使用しようとしましたが、予想どおりエラーが発生します。var_dump($conn)aの直前に実行すると、 mysqli_prepare($conn, $sql)NULL が出力されます。どうすればDBに接続できますか?

注: 名前が変更されても同じ動作をする場合に備えて、名前を conn から他の vars に変更しました。Drupal 7 と Wordpress もインストールしています (基本的な msql を使用して接続しているだけだと思います)。

アップデート:

ファイル全体: https://dl.dropbox.com/u/6688861/phpconn.txt

4

2 に答える 2

1

最後var_dumpは、接続が正常に機能していることを示します。あなたの問題は、その関数で宣言せずに関数$connで参照していることです。ValidateForm()global $conn

于 2012-07-16T21:14:04.880 に答える
0

その最後の結果では、接続は正常です。接続が機能しなかった場合、MySQLサーバー情報を取り戻すことはできません。この呼び出しに関連して、未定義の変数エラーはどこで発生しますか?より多くのコンテキストを持つことが役立つ場合があります。

于 2012-07-16T21:16:46.543 に答える