2011-08-09 11 views
0

私のシステムはWindows XP SP2で、私のweserverはMicrosoft Webmatrixです。 PHPは正常に動作しますが、db接続を追加しようとするとhttpエラー500.0になります。エラーを発行するコード部分HTTPエラー500.0を取得する

$db = new MySQLi('localhost', 'my_login', 'my_pass', 'db_name'); 
if ($db->connect_errno()) { 
    printf("Connect failed: %s\n", $db->connect_error()); 
    exit(); 
} 

私はそれを削除するとページが正常に読み込まれます。どうすれば修正できますか?

+3

お客様のWebサーバーには、エラーの詳細に関する詳細情報が記載されたエラーログが必要です。 –

+0

webmatrixサーバのログファイルが見つかりません –

+2

次に、サーバがどこでどのようにエラーを記録するかを調べる必要があります。私は誰も正確なエラーメッセージなしであなたを助けることができるとは思わない - それは何でもありうる –

答えて

5

mysqli::connect_errnomysqli::correct_errorare properties, not functions

$db = new MySQLi('localhost', 'my_login', 'my_pass', 'db_name'); 
if ($db->connect_errno) { 
    printf("Connect failed: %s\n", $db->connect_error); 
    exit(); 
} 

あなたは、PHPは、このために誤差が生じることになる、とあなたはそれだけで、サーバログにチャッキングばかりだと、一般的な500エラーがに提示display_errorsオフになっていますユーザー。


あなたはまた言うドキュメントでノートに耳を傾ける必要があります。

mysqli-> connect_errorプロパティは、PHPのバージョン5.2.9と5.3.0で正しく動作します。

PHPバージョン5.2.9または5.3.0以降を使用していますか?


今後、障害診断を実行するにはサーバーログを見つける必要があります。

ウィキペディアによると、Microsoft WebMatrix is a software bundle which uses IIS Express for webserver functionalityによる。 IIS Expressがログを保存する場所を検索すると、this Q&Aになります。ユーザーディレクトリ(またはシステム管理者アカウントのディレクトリ)に "IISExpress"という名前のディレクトリを探します。

0

エラーコード500は、内部サーバーエラーがあることを示します。通常、これはサーバー構成の一部が間違っていることを示します。ウィキペディアにはすべてhttp status codesの概要があります。 他の人が既に言及したように:エラーログを見ずにあなたを助けるのは難しいです。私はまた、dbの資格情報が正しいことを確認します。

+0

実際には、PHPを書くとき、あなたは ' display_errors'がオンになります。 –

+0

display_errorsについての良い点 – FrankS

関連する問題