アプリ版:「スタンプのみでお礼する」機能のリリースについて

PHPを使用してMySQLサーバに接続しようと思うのですが、どうしても
"Warning: mysql_connect() [function.mysql-connect]: Can't connect to MySQL server on 'localhost' (10061) in C:\Server\Apache2.2\htdocs\htdocs\connect.php on line 2"
と表示されて接続できません。いろいろ試してみたので、情報を列挙いたします。

動作環境
OS:WindowsXP Pro
Apache2.2.8
PHP5.2.6
MySQL5.0

1.コマンドプロンプトからはMySQLに正常に入ることが可能です。

2.上記のエラーが出るPHPプログラムは以下の通りです。
"<?php %conn = mysql_connect("localhost", "root", "password"); ?>

3.phpMyAdminを使って接続しようとしても以下のエラーが出ます。
#2003 - サーバが応答しません"

4.セキュリティソフトを終了させて接続しても同様の症状でした。

5.phpinfo()関数は正常に動作し、mysqlやmysqliの情報も表示されます。

以上の内容ですが、よろしくお願いいたします。

A 回答 (10件)

%connは$connの写しミスでしょうか?

    • good
    • 0
この回答へのお礼

すみません。%connと載せていましたが、"$conn"が正解です。

お礼日時:2008/05/24 15:14

phpinfo()でMySQLの情報は出るでしょうか?

    • good
    • 0
この回答へのお礼

お返事ありがとうございます。
phpinfo()でmysqlの情報はでます。

MySQL Supportenabled
Active Persistent Links0
Active Links0
Client API version5.0.51a

DirectiveLocal ValueMaster Value
mysql.allow_persistentOnOn
mysql.connect_timeout6060
mysql.default_hostno valueno value
mysql.default_passwordno valueno value
mysql.default_portno valueno value
mysql.default_socketno valueno value
mysql.default_userno valueno value
mysql.max_linksUnlimitedUnlimited
mysql.max_persistentUnlimitedUnlimited
mysql.trace_modeOffOff

お礼日時:2008/05/24 15:18

失礼、出るのですね・・・何でしょうかね。


もう少し考えて見ます。
    • good
    • 0

参考になるかどうか、私のphp.ini-distのMySQLに


関する部分です。

[MySQL]
mysql.allow_persistent = On
mysql.max_persistent = -1
mysql.max_links = -1
mysql.default_port =
mysql.default_socket =
mysql.default_host =
mysql.default_user =
mysql.default_password =
mysql.connect_timeout = 60
mysql.trace_mode = Off

因みに mysql_close($conn); もセットで入れてみては
どうでしょうか?

更に、XAMPPですと、インストール一発で全部動きます
が、そんなヤワな方法は拒絶されますか?

この回答への補足

mysql_close($conn);を追加してもエラーは出るようです。
Warning: mysql_connect() [function.mysql-connect]: Can't connect to MySQL server on 'localhost' (10061) in C:\Server\Apache2.2\htdocs\htdocs\connect.php on line 2

Warning: mysql_close(): supplied argument is not a valid MySQL-Link resource in C:\Server\Apache2.2\htdocs\htdocs\connect.php on line 3

補足日時:2008/05/24 15:42
    • good
    • 0
この回答へのお礼

お返事ありがとうございます。
自分のphp.iniはphp.ini-distではなくphp.ini-recommendedを使用しています。もしかするとphp.ini-distの方で動くかもしれないので試してみます!

追記 XAMPPはなるべく避けたいと思います。助言ありがとうございます。

お礼日時:2008/05/24 15:39

MySQLの動作はコマンドで確認したとのことですが、


ネットワーク経由の確認でしょうか?

mysql -h localhost -u root -p

で確認してみてください。

この回答への補足

先ほどphp.ini-distを使ってphp.iniを設定したり、php.iniのmysql設定を確認したのですが、貴方と全くおなじ設定でした。

補足日時:2008/05/24 16:02
    • good
    • 0
この回答へのお礼

コマンドプロンプトで確認したのはネットワーク経由の確認ではありません。ちなみに、
mysql -u root -p
********

mysql -h localhost -u root -p
********
でやってもコマンドプロンプトからはmysqlに入ることができました。

お礼日時:2008/05/24 15:49

phpフォルダ内のlibmysql.dllをC:\WINDOWS\system32にコピーしましたか?


Apache/logsフォルダ内のerror.logにヒントらしきエラーログが出ることが多いので見てみてください。

参考URL:http://drunk.chips.jp/web/2006/07/php5_windows.h …
    • good
    • 0
この回答へのお礼

お返事ありがとうございます。
libmysql.dllはWindowsフォルダやsystem32フォルダにコピーして試してみました。ですが、同じ状況のようです。

お礼日時:2008/05/25 12:05

php5のマニュアルでは、システム環境変数path にphpをインストールしたディレクトリーを追加する方法が推奨されています。


http://jp.php.net/manual/ja/faq.installation.php …

参考URL:http://jp.php.net/manual/ja/faq.installation.php …
    • good
    • 0
この回答へのお礼

お返事ありがとうございます。
環境変数にPHPをインストールフォルダへパスを入れています。パスに間違いがないかも確認したのですが、きちんと入っています。

お礼日時:2008/05/25 12:07

以下のサイトに似た事例がありました。



http://www.geocities.jp/nonoyamajp/C32nd/MySQLNo …
    • good
    • 0

「telnet localhost 3306」とやっても応答はありませんか?

    • good
    • 0

私も同様なエラーで3日間、四苦八苦しております。


解決したようであれば、お手数ですがお教えください。
    • good
    • 0
この回答へのお礼

MySQLをアンインストールして、インストール先のフォルダの削除して、インストールしなおしたら直りました。原因はわかりませんが、設定のファイルがアンインストールしても残ったままになっていたのかもしれません。

お礼日時:2008/09/03 20:17

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!