phpがmysql_PHPチュートリアルに接続できない問題の解決策のまとめ

WBOY
リリース: 2016-07-13 10:56:25
オリジナル
1011 人が閲覧しました

この記事は、PHP が MySQL データベースに接続できない場合に、PHP 開発でよく発生するいくつかの問題の解決策をまとめて共有しています。必要な方は参照してください。

質問1

今日ノートブックに mysql と php をインストールしましたが、すべてが正常にインストールされました (php@IIS7.5-fastCGI)。ただし、phpmyadmin を使用して接続してテストすると、「#2002 接続できません」というエラーが表示されます。他のプログラムを使用した場合も同じ問題が発生します。
確認すると、php の mysql 拡張機能が正しくインストールされ、mysql サービスが正常に起動します。これは奇妙なことです。 navicatを使って再度接続すると繋がりました。 。どうやらphpとmysql間の通信に問題があるようです。
Baidu で検索したところ、問題が見つかりました:
mysql_connect() 関数のデータベースサーバーパラメータは現在 localhost に設定されていますが、127.0.0.1 に変更すると正常にアクセスできるようになります。
システムのホスト ファイルは、127.0.0.1 から localhost への解決を提供しません。

解決策 (win7 システムを例にします): C:\Windows\System32\drivers\etc\hosts ファイルを見つけます。デフォルトは、デスクトップなどの別のパスにコピーする必要があります。ファイルを開き (オープン方法: メモ帳)、ファイルの最後に次のように追加します:

127.0.0.1 ローカルホスト

すでに存在する場合は、その前にある「#」を削除します。

質問2


phpinfo() などの PHP スクリプトは通常どおり実行できます。

「mysql_connect」関数が表示されるとすぐに応答がなく、エラーも報告されません。

$conn = mysql_connect("127.0.0.1","root","xxxx") または die("MYSQL データベース接続に失敗しました:".mysql_error()); など

が Apache ログ ディレクトリ error.log に表示されます

PHP 警告: PHP スタートアップ: ダイナミック ライブラリ 'c:\\php\\ext\\php_mysql.dll' をロードできません

解決策

「libmysql.dll」をApacheのbinディレクトリにコピーします。次に、再起動して error.log を観察します。エラーが消えたら、成功です。

別の情報: オンライン情報には、「libmysql.dll」と「php_mysql.dll」を Windows/system32 にコピーするようにと記載されています。


質問3

コードは次のとおりです コードをコピー
$link_id=@mysql_connect( "localhost ", "sampadm ", "secret "); //以下のコードは省略
?>
実行時に次のプロンプトが表示されます:

致命的なエラー: var/www/html/mytest.php の未定義関数 mysql_connect() の呼び出し

解決策

1.php.ini

extension_dir を絶対パス「d:\apache2\php\ext」に設定しないと、環境によってはエラーが発生します。

次の 2 行の関数拡張を開きます

拡張子=php_mysql.dll

拡張子=php_mysqli.dll

2. libmysql.dll (php ディレクトリの下) と php_mysql.dll (php/ext ディレクトリの下) を c:\windows\system32 ディレクトリにコピーします (libmysql.dll は php ディレクトリにある必要があります。たとえば、私の場合は D :\apache2\ libmysql.dll は php ディレクトリにあり、php_mysql.dll は D:\apache2\php\ext にあります)

3. テスト、
1> まずコマンドラインを開きます
A) [スタート] メニュー -> [mysql] -> [mysql5 サーバー] -> [MySQL コマンド ライン クライアント] をクリックします。 //このステップが成功すると、mysql セキュリティは成功します。失敗すると、mysql のインストールは失敗します。アンインストールして再インストールしてください。
B) パスワードを入力してください
//この手順が正常であれば、root アカウントのパスワードが正しいことを意味します。失敗した場合は、アカウントのパスワードが間違っています

2> ホームディレクトリに新しいファイルを作成し、testmysql.php として保存し、ブラウザに http://localhost/testmysql.php (または http://localhost:81/testmysql.php) と入力します


そうでない場合は、Apache が php メソッドと mysql メソッドをロードしたかどうかを確認してください


Apache で php5 をサポートするには、次の 3 行を httpd.conf ファイルに追加します

PHPIniDir "D:/ccopen/php5/"

LoadModule php5_module "D:/ccopen/php5/php5apache2_2.dll"
AddType application/x-httpd-php .php
php.ini の次の 2 行からセミコロンを削除します
拡張子=php_mysql.dll
拡張子=php_mysqli.dll
php_mysql.dll と libmysql.dll を system32 にコピーします
Apacheサーバーを再起動します


www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/632173.html技術記事この記事では、PHP 開発中によく遭遇する、PHP が MySQL データベースに接続できない問題の解決策をまとめて共有します。必要な場合は参考にしてください。 質問 1...
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!