昨日、友人のサーバー設定を手伝ったところ、Apache ログに PHP 警告: PHP スタートアップ: ダイナミック ライブラリ プロンプトを読み込めないことがわかりました。その後、データベース接続をデバッグしているときに、未定義関数 mysql_connect( への呼び出し) が見つかりました。 ) エラーが発生したので、mysql だと思いました。読み込みは成功しました。問題の解決方法を見てみましょう。
-
-
接続コード
echo 'a';
$cn = mysql_connect("localhost",'www.bKjia.c0m','mysql ユーザーパスワード') または die(mysql_error());
if( $cn )
{
echo phpinfo();
}
else
{
echo 'mysql connect failed';
}
?>
サーバーは安全なphp.iniを使用しており、エラーは表示されないため、Yu ShixiangはApacheインストールディレクトリのログにあるerrors.logログを調べました
以下のエラーが見つかりました
PHP 警告: PHP 起動: 動的ライブラリをロードできません
「D:myserverphpextphp_mysql.dll」 - xd5xd2xb2xbbxb5xbdxd6xb8xb6xa8xb5xc4xc4
xa3xbfxe9xa1xa3rn 行 0 の不明です
PHP 警告: PHP 起動: ダイナミック ライブラリをロードできません
「D:myserverphpextphp_mysqli.dll」 - xd5xd2xb2xbbxb5xbdxd6xb8xb6xa8xb5xc4
xc4xa3xbfxe9xa1xa3rn ライン 0 の不明
[火曜日 12 月 31 日 09:05:15 2013] [エラー] [クライアント 127.0.0.1] PHP 致命的エラー: 未定義への呼び出し
E:wwwa.php の 2 行目の関数 mysql_connect()、リファラー: www.bKjia.c0m[火 12 月 31 日 09:05:16 2013] [エラー] [クライアント 127.0.0.1] PHP 致命的なエラー: 未定義への呼び出し
E:wwwa.php の 2 行目の関数 mysql_connect()、リファラー: http://localhost/
[火 12 月 31 日 09:05:17 2013] [エラー] [クライアント 127.0.0.1] PHP 致命的なエラー: への呼び出し未定義
E:wwwa.php の 2 行目の関数 mysql_connect()、リファラー: http://localhost/
[火 12 月 31 日 09:06:04 2013] [エラー] [クライアント 127.0.0.1] PHP 致命的なエラー: への呼び出し未定義
E:wwwa.php の 3 行目の関数 mysql_connect()、リファラー: http://localhost/
[火曜日 12 月 31 日 09:06:05 2013] [エラー] [クライアント 127.0.0.1] PHP 致命的なエラー: への呼び出し未定義
E:wwwa.php の 3 行目の関数 mysql_connect()、リファラー: http://localhost/
[火曜日 12 月 31 日 09:06:05 2013] [エラー] [クライアント 127.0.0.1] PHP 致命的なエラー: への呼び出し未定義
E:wwwa.php の 3 行目の関数 mysql_connect()、リファラー: http://localhost/
[火曜日 12 月 31 日 09:06:05 2013] [エラー] [クライアント 127.0.0.1] PHP 致命的なエラー: への呼び出し未定義
E:wwwa.php の 3 行目の関数 mysql_connect()、リファラー: http://localhost/
[火 12 月 31 日 09:06:06 2013] [エラー] [クライアント 127.0.0.1] PHP 致命的なエラー: への呼び出し未定義
E:wwwa.php の 3 行目の関数 mysql_connect()、リファラー: www.bKjia.c0m
[火曜日 12 月 31 日 09:06:06 2013] [エラー] [クライアント 127.0.0.1] PHP 致命的エラー: 未定義への呼び出し
E:wwwa.php の 3 行目の関数 mysql_connect()、リファラー: http://localhost/
ログにこんな一文があります
PHP 起動: ダイナミック ライブラリ 'D:myserverphpextphp_mysql.dll' をロードできません これは
を意味しますもう 1 つのポイントは、「PHP 致命的エラー: 未定義関数の呼び出し」というプロンプトです。
mysql_connect()、これは、mysql が正常に接続されていないこと、つまり、mysql ライブラリのロードが失敗していることを意味します。分析によると、2 つの可能性があります。1 つは、ファイルがではないことです。
存在します。以前にこのphp解凍パッケージを使用したため、この問題は存在しません。2はサーバー環境変数の問題です。環境変数の場合、解決策は2つあります解決策
1、Windowsに環境変数を直接追加します
winXP/2003 の場合は、c:/windows/system32 にコピーするだけです
システム ディレクトリにコピーした後、もう一度 http://localhost/a.php をテストすると、Apache 環境を思い出す必要があることに注意してください。
出力されたphpinfo関連情報について、当サイトのオリジナル記事を転載する場合は出典 www.bKjia.c0m を明記してください詳細については、http://www.bKjia.c0m/phper/linux-php/56512.htmをご確認ください
http://www.bkjia.com/PHPjc/633810.html