• ベストアンサー

関数mysql_connectについて

ブラウザからmysqlに接続したいのですが、このようなエラーが出てしまい接続できません。 Fatal error: Call to undefined function mysql_connect() in C:\Apache Group\Apache2\htdocs\kan.php on line 9 9行目 mysql_connect(localhost,root,password); そもそもこのlocalhostとはなんなのでしょうか? 分かる方がいたらお願いします。

  • MySQL
  • 回答数2
  • ありがとう数4

質問者が選んだベストアンサー

  • ベストアンサー
  • kalze
  • ベストアンサー率47% (522/1092)
回答No.2

>PHP(2.0.52) と書かれていますが、きっとこれはApacheのバージョンでしょう。 今なら、PHPは4.3系列か、5系列だとおもいます。 勉強を始めて間もないようですので、アドバイスを。 まず、インストールについては、1冊の本に従うほうが最初はよいとおもいます。 それぞれのソフトウェアについて、多少でも知識がついたとか、基本的に問題なく動いた段階から、カスタマイズしていくのがよいとおもいます。 でないと、インストール時点からあちこち散ってしまったり、カスタマイズしていると、どこに問題があって動かないのかがわからなくなってしまいますので。 個別に勉強する必要はもちろんあるのですが、まず、それぞれのソフトウェアがどういう関係なのかなど体系が分からないと、連携部分でつまずいてしまいます。 そのため、まずは1冊の本を参考にそれぞれのソフトウェアをインストールし、設定してみたほうがよいかもしれません。 PHPでデータベースを扱う場合、今回はMySQLですが、その専用の関数はPHP本体に内蔵されていません。 そこでモジュールといういわばオプションなものを使用することになります。 MySQL用のモジュールが、php_mysql.dllというものになります。 これを使用しますよってことをPHPの設定ファイルで宣言してあげないと、PHPは使わないから読み込まないって動作をしてしまいます。 ただ、PHPのバージョンによって、設置場所が異なったり、最初から付属していなかったりします。 お使いのPHPのバージョンがわからないので、詳しくはなんともいえませんが、php_mysql.dllというファイルがあるか探してみてください。 もしあればよいのですが、なければphp_mysql.dllでgoogleで検索すると情報がでてきますので、ご自身のPHPのバージョンにあった方法で入手してください。 その後、PHP.iniファイルでextension=php_mysql.dllをコメントから復帰させてください。 その後、apacheを再起動します。 なお、これらの手順はPHPのバージョンによって異なる場合がありますので、ご注意ください。

teitan
質問者

お礼

PHPのバージョンは5.0.2.2だと思います。 なんか、PHP5の場合初期設定の状態ではmysqlに接続できないみたいで、extension=php_mysql.dllのコメントをはずして少しいじったら、表示されるようになりました。本当にありがとうございました。

その他の回答 (1)

  • kalze
  • ベストアンサー率47% (522/1092)
回答No.1

エラーの意味が分かった上での質問なんでしょうか? エラー内容は、「定義されていないmysql_connectという関数が呼ばれています(使われています)」です。 環境はWindows+Apache2+PHP(バージョン不明)+MySQL(バージョン不明)のようですが、php_mysql.dllは入っていて、ロードするようになっていますか? PHPソースはどこからかDLしてきたものでしょうか? localhostとは、通常は自ホストのことです。 (つまりマシン的に自分自分にはいっているMySQLに接続すると書いてある)

teitan
質問者

補足

回答ありがとうございます。 定義されていない関数が呼ばれているということは、バージョンによる違いなのですかね?php_mysql.dllとかは意味が分からないです・・すみません。 実は、PHP(2.0.52)とmysql(4.0.21)の方を違う参考書で勉強し、 違うMYSQLの参考書で実践しています。初期設定でなにかしら合わないと言う事でしたら、 1回、mysqlとアパッチなどは、1回アンインストール して、新しい本を参考に、最初から設定したほうがいいのですかね?1回エラーが出てしまうと太刀打ちできなくなってしまう。そこがけっこうきついです。

関連するQ&A

  • PHPからMySQLに接続できません。

    PHP初心者でWindows XPを使っています。 「実戦マスター PHP+MySQL」という本で勉強しているのですがどうしてもわからないところがあるので教えてください。 MySQLモニタからデータベースの操作まではうまくいったのですが、phpからMySQLを操作する段になってmysql_connect('localhost', 'root', 'xxxx');とするとエラーになるのです。エラー画面は Fatal error: Call to undefined function mysql_connect() in C:\Program Files\Apache Group\Apache2\htdocs\test\test7-1-1.php on line 6 です。何故こんなエラーが出るかわかりません…。どなたか助けて頂けませんでしょうか。

  • mysqlに接続できない?

    XAMPP v3.2.2を使用しています。 Apache 2.4.18 mysqlnd 5.0.12 PHP 7.0.8 phpからmysqlに接続したいのですが $conn = mysql_connect( "localhost", "root", "" ); 上記のコードで Fatal error: Uncaught Error: Call to undefined function mysql_connect() のエラーが表示されます。 Call to undefined function mysql_connect() を検索するといくつか出てきますがどれも解決には至りませんでした。 気になるのは「libmysql.dll」が存在していないことです。 サイトを見ると標準でインストールされるような事が書かれていますがインストールされない場合もあるのでしょうか? それともこのバージョンでは不要なのでしょうか?

    • ベストアンサー
    • MySQL
  • mysqlにうまく接続できません

    PHP、Mysql初心者です。 何かWEBページの作品を作ろうと、データベースを使ってます。 ごくごく定番のPHPからデータベースの内容を書き出すことをしているのですが、 Fatal error: Call to undefined function mysql_connect() in C:\Program Files\Apache Group\Apache2\htdocs\renshu\ken.php on line 10 というエラーコードが出ました。私のテキストエディタでの9~11行目はこちらです。ちなみにApache2とMysql5です。 <?php mysql_connect('localhost','root','パスワード'); mysql_select_db('データベース名'); 参考書通りにやっていまして、タイプミスはないはずなんですが…。ホスト名やユーザ名もあっているはずです。 どなたか教えてください。よろしくお願いいたします。

  • PHPでのMySQL接続エラーについて

    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の情報も表示されます。 以上の内容ですが、よろしくお願いいたします。

    • ベストアンサー
    • MySQL
  • MySQLへの接続がうまくいっていないようなのですが

    つい最近PHPをはじめたばかりなのですが、環境を整えて試しにスクリプトを実行してみるとエラーが出てしまいました。 開発環境は Apache:2.0.53/PHP:5.2.1/MySQL:5.0.15 です。 実行したスクリプトは $dbHandle = mysql_connect("localhost","ユーザー","パスワード") or die("can not connect db\n"); 出てきたエラーが Warning: mysql_connect() [function.mysql-connect]: Can't connect to MySQL server on 'localhost' (10061) in C:\Program Files\Apache Group\Apache2\htdocs\myphp1.php on line 18 can not connect db MySQLへの接続ができていないとまでは理解できたのですが・・・・・ 申し訳ありませんが何卒よろしくお願いします。

    • 締切済み
    • PHP
  • PHPでMySQLに接続失敗

    Apache_2.0.55 php-5.1.2-win32 mysql-5.0.21-win32 windows XP HOME Call to undefined function mysql_connect() in C:\Program Files\Apache Group\Apache2\htdocs\sample\smp01.php on line 9 とエラーがでました。 以下の設定しているのですが、このようなエラーがでました PHPとApacheのテストは成功しています mysqlコマンドラインツールの起動・操作もできました mysqlのパスワードは設定はしていません PHPのスクリプトは実行できるのですが PHPとMySQLの接続がうまくいきません 色々と、調べているのですが原因がわかりません 初心者です、どうぞ宜しくお願いします 1 <?php 2 3 $DBSERVER = "localhost"; //MySQLサーバー名 4 $DBUSER = "root"; //ログインユーザー名 5 $DBPASSWORD = ""; //パスワード 6 $DBNAME = "sampledb"; //データベース名 7  8 //MySQLに接続します 9 $con = mysql_connect($DBSERVER, $DBUSER, $DBPASSWORD); libmysql.dllをC:\WINDOWS\system32にコピー PHP.iniファイルでextension=php_mysql.dllをコメントから復帰 Apacheを再起動

    • ベストアンサー
    • MySQL
  • PHPからのmysql_connect();がエラーで接続できません。

    QbickUと申します。よろしくお願いします。 環境は、 WinNT / Apache1.3.29 / PHP4.3.6 / MySQL 3.23.49 です。 症状としては、phpで次のように記述し実行すると //サーバー名--localhost ユーザー名--root パスワード--123456 $dbHandle = mysql_connect("localhost","root","123456"); if ($dbHandle == False) { print ("can not connect db\n"); exit; } else { print ("OK\n"); exit; } -- 次のようなエラーが返ります。 Warning: mysql_connect(): Access denied for user: 'SYSTEM@localhost' (Using password: NO) in c:\html\mytest1.php on line 4 can not connect db -- 補足事項なのですが ・MySQL権限の初期設定済みです。 ・コマンドプロンプトからは接続、テーブル操作ができます。(ルート権限 user:root pw:123456、また他の一般権限ユーザーにおいても) ・phpinfo();の結果において、MySQLの表示が確認できます。 ・mysqld-nt.exeはひとつしか起動していません。 'SYSTEM@localhost',password: NOとなっているため、ユーザーID、パスワードとも渡っていないような気がします。 同じようなスレッドを見つけたのですが、いずれもそこで解決に至っておらず、往生しています。 アドバイスをいただけたらうれしいです。よろしくお願いします。

  • コマンドラインからのphp実行で、Fatal error: Call to undefined function mysql_connect()

    お世話になります。 CentOS PHP 5.2.6 MySQL 5.0.45 です。 PHPでMySQLを使用しています。 ブラウザから確認するようなプログラムでは、何の不自由もなく使用できているのですが、sshにてログインし、consoleからmysqlを使用するとエラーが発生してしまいます。 [root@www etc]# echo "<?php mysql_connect();?>" | php Fatal error: Call to undefined function mysql_connect() in /etc/- on line 1 原因が分からず困っております。 解決方法や、ここがあやしいなど、ご教授いただければ幸いです。 よろしくお願いいたします。

    • 締切済み
    • PHP
  • mysql_connect関数の使い方

    mysql_connect関数の、戻り値の使い方についての質問です。 mysql_connectで検索すると、 【使い方例】 $link = mysql_connect('localhost', 'mysql_user', 'mysql_password'); mysql_close($link); みたいなのが見つかります。(エラー処理は省略) そこで、mysql_connectとmysql_closeの間に、クエリを処理する関数を入れるとします。 【例】 $link = mysql_connect('localhost', 'mysql_user', 'mysql_password'); test();←この関数の処理についての質問です。 mysql_close($link); test(){ mysql_query(”sql文”);} 上記の例の test()関数についてですが、mysql_connectの戻り値の$linkを渡さなくてもいいのでしょうか? いつもは、test($link)見たいにしていました。 しかし、今回は戻り値を渡すのを忘れていたのに、ちゃんと希望通りに動いていました。 今回のように、mysql_connect関数をひらいて、dbの処理をする場合は、 途中の関数に、戻り値を渡さなくてもいいのでしょうか?

    • ベストアンサー
    • PHP
  • phpからMySQLに接続について

    phpからMySQLに接続について 自宅サーバーにMySQLをインストールしたのですが、 phpからMySQLに接続がうまくできず、困っています。 [test.php] <?php mysqli_connect("localhost","root","qwertyui") or die("Error MySQL First Test"); echo "Success MySQL First Test"; ?> [エラーログ] PHP Fatal error: Call to undefined function: mysqli_connect() in ~~~test.php on line 2 コマンドラインでは正常に動作しているのでインストールは問題ないと思います。 PHPの設定だと思うのですが、考えられる原因を教えていただければ幸いです。 環境 VineLinux 4.2 PHP 4.4.8 MySQL 5.0.27 よろしくお願いします。

    • ベストアンサー
    • MySQL