ホームページ >バックエンド開発 >PHPチュートリアル >PHP が mysql に接続できない問題を解決します。オンラインで待機します。

PHP が mysql に接続できない問題を解決します。オンラインで待機します。

WBOY
WBOYオリジナル
2016-06-23 14:06:041096ブラウズ

このマシンは win7 システムです
PHP バージョン: PHP バージョン 5.2.6
apache 2.2
mysql: 5.1.40

ローカルテストでは、PHP は正常に動作しますが、唯一のことは、mysql に接続できず、phpmyadmin を使用できないことです

ローカル テストは IE で行われます。360 では、次のようなプロンプトが表示されます: 指定した Web ページにアクセスできません! エラーの種類: 接続に失敗しました

解決にご協力ください。ありがとうございます...


ディスカッションへの返信 (解決策)

MYSQL への接続に使用するステートメントを見てみましょう。

<?php$link=mysql_connect('localhost','root','admin');if(!$link)   echo "fail";else   echo "success";mysql_close();?>

まずサービスを開いて、mysql サービスが開始されているかどうかを確認します

Navicat をダウンロードして作成しますか? 次にテストします
ホスト名または IP: localhost を入力します
ポート: 3306
ユーザー名とパスワードは次のとおりです設定を入力します。デフォルトのユーザー名は root です

サービスに移動して、mysql が開始されていることを確認します

私はデータベースに接続できる mysql 用の EMS SQL MANAGER 2005 lite を使用しています。 localhost
ポート 3306
ユーザー名 root
パスワード admin

これでデータベースに接続できます。

2760f570568f4d64545bb1c1572e10e5 ;

93f0f5c25f18dab9d176bd4f6de5d30e または、入力した URL が間違っています。

環境が正しく設定されていません

404 エラー、アクセスされているファイルが存在しないか、入力した URL が間違っています。

ページを開くとすぐに実行されます.... この問題が発生します。 。 mysql と関係のないものはすべてこのページで実行できます。これは、phpmyadmin にアクセスした場合も同じで、ユーザー名とパスワードを入力すると、ログイン ページが表示されますが、表示できません。 。 。

環境が正しく設定されていません


php は実行できます。 mysql にアクセスできません...どう設定すればよいですか? 。インターネット上の php.ini ファイルによると、n 回変更されており、アクセスできません

10 階の bsk_bg からの返信を引用:

Web ページを表示できないコードを貼り付けました

HTML コード


5ee5d00c817d813e46336070c67b569b 100db36a723c770d327fc0aef2ce13b1 93f0f5c25f18dab9d176bd4f6de5d30e

e9bcaf68c66b819c69b029fe090c0860

这个是我常用的 修改测试一下  一般不会有问题。

你需要在 phpinfo() 的结果页面中查看 display_errors 项
对,用此方法输出一下看看php的状况

    把地址栏的http://localhost/访问MYSQL的PHP页地址改换为:http://127.0.0.1/访问MYSQL的PHP页地址
或者颠倒过来试一下!

根据以上几楼改动测试。问题依旧未解决

你需要在 phpinfo() 的结果页面中查看 display_errors 项
我粘上我的phpinfo()页面的一些结果上来

ConfigurationPHP CoreDirective Local Value Master Value allow_call_time_pass_reference On On allow_url_fopen On On allow_url_include Off Off always_populate_raw_post_data Off Off arg_separator.input & & arg_separator.output & & asp_tags Off Off auto_append_file no value no value auto_globals_jit On On auto_prepend_file no value no value browscap no value no value default_charset no value no value default_mimetype text/html text/html define_syslog_variables Off Off disable_classes no value no value disable_functions no value no value display_errors On On display_startup_errors On On doc_root no value no value docref_ext no value no value docref_root no value no value enable_dl On On error_append_string no value no value error_log no value no value error_prepend_string no value no value error_reporting 6135 6135 expose_php On On extension_dir c:\php\ext c:\php\ext file_uploads On On highlight.bg #FFFFFF #FFFFFF highlight.comment #FF8000 #FF8000 highlight.default #0000BB #0000BB highlight.html #000000 #000000 highlight.keyword #007700 #007700 highlight.string #DD0000 #DD0000 html_errors Off Off ignore_repeated_errors Off Off ignore_repeated_source Off Off ignore_user_abort Off Off implicit_flush Off Off include_path .;C:\php5\pear .;C:\php5\pear log_errors Off Off log_errors_max_len 1024 1024 magic_quotes_gpc On On magic_quotes_runtime Off Off magic_quotes_sybase Off Off mail.force_extra_parameters no value no value max_execution_time 30 30 max_input_nesting_level 64 64 max_input_time 60 60 memory_limit 2M 2M open_basedir no value no value output_buffering no value no value output_handler no value no value post_max_size 8M 8M precision 12 12 realpath_cache_size 16K 16K realpath_cache_ttl 120 120 register_argc_argv On On register_globals Off Off register_long_arrays On On report_memleaks On On report_zend_debug On On safe_mode Off Off safe_mode_exec_dir no value no value safe_mode_gid Off Off safe_mode_include_dir no value no value sendmail_from no value no value sendmail_path no value no value serialize_precision 100 100 short_open_tag On On SMTP localhost localhost smtp_port 25 25 sql.safe_mode Off Off track_errors Off Off unserialize_callback_func no value no value upload_max_filesize 2 2 upload_tmp_dir no value no value user_dir no value no value variables_order EGPCS EGPCS xmlrpc_error_number 0 0 xmlrpc_errors Off Off y2k_compliance On On zend.ze1_compatibility_mode Off Off 

继续等待结果..............

是不是权限问题?

记录中

重新安装php 和apache 到其他非c盘看看.包括mysql.
没必要在这种事情上纠结.

这种情况很简单,只需要把 php.ini中“;extension=php_mysql.dll”前的“;”去掉,加载mysql模块。重要的是配置Apache把其中的httpd.conf 中加入“ phpinidir “E:/PHP””就是你的安装路径

未解决....................

IE オプションで [フレンドリーな HTTP エラー メッセージ] のチェックを外します。

この状況は非常に簡単で、php.ini の「;extension=php_mysql.dll」の前の「;」を削除して、mysql モジュールをロードするだけです。重要なことは、Apache を設定し、インストール パスである httpd.conf に「phpinidir "E:/PHP"」を追加することです
正解です!

あはは、とても単純な質問ですね。 PHP が mysql に接続できないのは、php.ini 内の dll ファイルが開かれていないことが原因です。リンクがあるかどうかを確認してください。 LZ ああ、もっと勉強してください

あはは、とても単純な質問ですね。 PHP が mysql に接続できないのは、php.ini 内の dll ファイルが開かれていないことが原因です。リンクがあるかどうかを確認してください。 LZ ああ、もっと勉強してください

これは前のフロアで回答済みで、オープンできるものはすべてオープンされました

phpinfo を投稿し、データベースに接続する DLL はすべてオープンされました

の libystu からの返信を引用します。 34階:

この状況 php.iniの「;extension=php_mysql.dll」の前の「;」を削除してmysqlモジュールをロードするだけです。重要なことは、Apache を設定し、インストール パスである httpd.conf に「phpinidir "E:/PHP"」を追加することです

正解です!

この質問は前のフロアでも提起されました。それはそれほど単純ではありません、私はあなたが言ったようにこれらすべてのことを行いました。

まず、php 設定ファイルがすべて設定されているかどうか、不足しているものがないかどうかを確認してください
次に、mysql サービスが有効になっているかどうかを確認してください

mysql をフォローするプロセス中に、設定エラーはありませんか

Apache は正常にセットアップされていますか?

まず、php 設定ファイルがすべて設定されているかどうか、不足しているものがないかどうかを確認してください
次に、mysql サービスが有効になっているかどうかを確認してください
mysql をフォローするプロセス中に、設定エラーはありませんか
Apache は正常にセットアップされていますか?

確認後、必要なものはすべて設定されています

Apache で PHP プログラムを実行できます PHP の動作環境に問題がないことを示しています

mysql サービスが開始されており、接続して使用できることのみです。うまくいかないのは、PHP が mysql に接続できないということです


apache/logs/error.log

見て、問題が見つかるかどうかを確認してください

データベースに接続できるかどうかテストしてください。

そうでない場合は、データベースのインストールが失敗したことを意味します。

未解決....................

開発環境にない可能性があります。 。 。 。

C:phpext 環境変数 php を追加します

まず、データベースが正常に実行されているかどうかを 2 つの方法でテストします:
1. コマンド ラインから telnet localhost 3306 を実行して、接続できるかどうかを確認します。
2. コマンドラインから mysql インストールディレクトリの下の bin ディレクトリに移動し、mysql -u root -p を実行して、root ユーザーのパスワードを入力します。接続できた場合は、mysql が正常に実行されていることを意味します。

上記のチェックに加えて、Apache ログを確認することもできます

libmysql.dll は MYSQL ではなく PHP にあり、System32 にコピーされています

私もこの問題に遭遇しました~~~本当にめまいがします~~ ~

先生、問題は解決しましたか? 私もこの問題に遭遇しました。解決策を見つけてください! ! ! ! ! ! ! ! ! ! !

1.extension_dir = ".ext"
2. mysqllib.dllを参照するために、phpのディレクトリを環境変数パスに追加する必要があります。
3.extension=php_mysql.dll アノテーションと削除
4.display_errors = On はデバッグに便利です。オンにすると、undefine 関数が表示されるだけで 404 エラーが発生します。

Apache が一般的な php ページにアクセスできる場合は、データベースも接続できるはずです。

🎜 上記の設定を変更した後は、必ず Apache を再起動してください。 phpinfo を使用すると、mysql モジュールの存在を確認できます (オペレーティング システムを再起動する必要はありません)。 🎜
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。