PHPコードでMySQLが反応しない

このQ&Aのポイント
  • PHPでのデータベース参照クエリが通らない問題について
  • ApacheとMySQLが正常に動作しているが、PHPコードでのクエリが通らない
  • フォルダの位置がデフォルトと異なることが問題の可能性
回答を見る
  • ベストアンサー

PHPコードにMySQLが反応しない

環境 OS:winXP SP2 HE(localhost) Apache 2.0.52 MySQL 5.0.2 PHP 5.0.3 Apache,MySQL起動しています。 自動起動なのでMySQLのタスクトレイの表示はありませんがMySQLCommandLineClientでログインできますし、SQL文も通ります。 データベースは用意してあります。 必要な設定は済んでいると考えています。 [httpd.conf,my.ini] PHPコードだけのスクリプトは動きます。 ファイルはApache2\htdocs\に入れて、ブラウザで呼び出しています。 問題ではないのかと思っているところはデフォルトフォルダの位置です。 MySQLは"C:\Program Files\MySQL\MySQL Server 5.0" Apacheは"C:\Program Files\Apache Group\Apache2" PHPは"C:\PHP" になっています。 要点 PHPにてデータベースを参照するためのクエリが通らないようです。 参考書などのサンプルスクリプトとデータベースを利用してもクエリは通りません。 何が悪いのかご意見ご教授頂ければ幸いです。

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

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

  • ベストアンサー
  • betagamma
  • ベストアンサー率34% (195/558)
回答No.1

>問題ではないのかと思っているところはデフォルトフォルダの位置です。 このようにお考えになった根拠は、なんなのでしょうか? エラーメッセージを提示していただけるのが、最も手っ取り早い方法と思います。 クエリが通らない理由としては、 1)PHPのmysql関数群から、そもそもlocalhostのMySQLに接続できていない。 2)mysql関数群が、localhostのMySQLを見つけてはいるが、用意したデータベースにアクセスできない 3)クエリに使ったSQL文が間違っている・MySQLではサポートされていない などが考えられます。どれなのかを判断するためには、 1)PHPのエラーメッセージ 2)ご使用になったPHPスクリプト などの情報が必要です。補足をお願い申し上げます。

hgazou
質問者

補足

>このようにお考えになった根拠は、なんなのでしょうか? デフォルトフォルダの位置が問題ではないかと考えたのは、各ソフトウェアの参考サイトにおいて常にデフォルトフォルダや、表記が普通"C:\*\"と表記されているからです。 それが何か関係しているのではと思っているのですが、フォルダの位置が関係するような設定等があるのか検索しても知り得ませんでしたので付記した次第です。 >エラーメッセージを提示していただけるのが、最も手っ取り早い方法と思います。 エラーメッセージは、一切ありません。一切表示されません。 >クエリが通らない理由としては、 2)と3)は参考書のサンプルをそのまま利用していますので考えられないと思います。 1)のMySQLに接続できていない、というのが問題であると思います。 PHPスクリプトは利用したサンプルをそのまま付記します。 ◆[dbini.php] <?php //MySQLサーバー名 $DBSERVER = "localhost"; //ログインユーザー名 $DBUSER = ""; //パスワード $DBPASSWORD = ""; //データベース名 $DBNAME = "sampledb"; ?> ◆[smp3-01.php] <?php require_once("dbini.php"); $con = mysql_connect($DBSERVER, $DBUSER, $DBPASSWORD); $selectdb = mysql_select_db($DBNAME, $con); $sql = "select * from bookinfo order by isbn"; $rst = mysql_query($sql, $con); $body = "<TABLE border='1' cellpadding='2' cellspacing='0'> <TR> <TH bgcolor='#00CCCC'>ISBN</TH> <TH bgcolor='#00CCCC'>タイトル</TH> <TH bgcolor='#00CCCC'>価格</TH> <TH bgcolor='#00CCCC'>発売日</TH> <TR>\n"; while($col = mysql_fetch_array($rst)) { $body .= "<TR>\n"; $body .= "<TD>" . $col["isbn"] . "</TD>\n"; $body .= "<TD>" . $col["title"] . "</TD>\n"; $body .= "<TD align='right'>" . $col["price"] . "</TD>\n"; $body .= "<TD>" . ($col["date"] != "" ? $col["date"] : "<BR>") . "</TD>\n"; $body .= "</TR>\n"; } $body .= "</TABLE>\n"; mysql_free_result($rst); $con = mysql_close($con); ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <HTML> <HEAD> <META http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <META http-equiv="Content-Style-Type" content="text/css"> </HEAD> <BODY> <?= $body ?> </BODY> </HTML>

関連するQ&A

  • PHPにてMySQLとの接続をオープンできない。

    環境 OS:winXP SP2 HE(localhost) Apache 2.0.52 MySQL 5.0.2 PHP 5.0.3 Apache,MySQL起動しています。 自動起動なのでMySQLのタスクトレイの表示はありませんがMySQLCommandLineClientでログインできますし、SQL文も通ります。 データベースは用意してあります。 必要な設定は済んでいると考えています。 [httpd.conf,my.ini] PHPコードだけのスクリプトは動きます。 ファイルはApache2\htdocs\に入れて、ブラウザで呼び出しています。 要点 PHPスクリプトからMySQLとの接続をオープンできないようです。 何が悪いのかご意見ご教授頂ければ幸いです。 サンプル 以下のように単純に接続するphpファイルを作成しましたがブラウザは真っ白になったままです。 <?php $dbserver = "localhost"; $dbuser="root"; $dbpassword="パスワード"; $con = mysql_connect($dbserver,$dbuser,$dbpassword); if($con){print"OK!"; }else{print"NO!";} ?>

  •    ☆ PHP & Mysqlとの連携で Apacheのhttpd.

       ☆ PHP & Mysqlとの連携で Apacheのhttpd.confテキストの設定方法 ・PHP入門者ですが、Mysqlとの連携でのプログラム実装を何度か試みたのですが、 上手くいきません。(;一_一) ・エラーコードは、Fatal error: Call to undefined function mysql_connect() in C:\Program Files\Apache Group\Apache2\htdocs\php\db_Connect.php on line 16 と返されます。 ・<?php phpinfo(); ?>を実行しても、mysqlの項目は表示もされません。 ググってますが、参考して実行してもどうしても上手くいきません。 誰か、ご教授くださいませ。 実行環境:OS windowsXP,PHP + Mysql +Apache2、DreamWeaver

    • ベストアンサー
    • 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のインストール

    できません!。Apacheは入ったのですがPHPが反応しません。 php.ini httpd.confの構文エラーは分かっているのですが、いろんなサイトを検索すると書いてあることが違いどれを参考にしていいのか分かりません。ずばりこうしろと書いてあるサイトはありませんか? PHP5.2.55 Apache2.0.55 MYSQL4.1 windowsXP

    • 締切済み
    • PHP
  • Windowsでphpを動かす方法について。

    どうも、初めまして。 今、WIndows98上で、phpを動かしたいと思っています。そこで、 私は、windows98se+apache1.3.12+php3.0.16をインストールしました。 ActivePerlも入っています。perlは動いているのでapacheは正常に動作してい ると思います。しかし、.phpをブラウザから呼ぶと、「Internal Server Error」 が出てしまいます。いろいろ格闘してみたのですが、うまくいきません。 教えてください。ちなみに、dosプロンプトでphp.exe -vとするときちんとヴァージョンが表示されます。 私の環境は以下のとおりです。 phpはc:\php3に apacheはC:\Program Files\Apache Group\Apacheに 展開し、php3内のDLLは全てc:\windows\systemにコピーしました。 httpd.confを編集し、php3.iniを編集しc:\windowsにコピーしました。 以下がエラーログとiniファイル等の内容です。 長くなってしまいましたが、原因がわかる方おられましたら、よろしくお願いします。 =====errorlogの内容。 [Mon Apr 09 01:00:19 2001] [error] [client 127.0.0.1] (2)No such file or directory: couldn't spawn child process: c:/program files/apache group/apache/htdocs/test01.php3 =====phpファイルの内容。 <?php echo ("test<BR>"); ?> =====httpd.confの編集個所。 ScriptAlias /php3/ "c:/php3/" AddHandler cgi-script .php3 AddType application/x-httpd-php3 .php3 AddType application/x-httpd-php3-source .phps Action application/x-httpd-php3 "c:/php3/php.exe" =====php3.iniの編集個所。 include_path = "c:\php3" doc_root = "c:\Program Files\Apache Group\Apache\htdocs" extension_dir = "c:\php3" ; directory in which the loadable extensions (modules) reside

    • ベストアンサー
    • PHP
  • apache経由でphpのmysql接続不可

    以下をWindowsXP SP2にインストールしました。 apache_2.2.10-win32-x86-openssl-0.9.8i.msi php-5.2.6-win32-installer.msi mysql-essential-5.0.51b-win32.msi apache経由でmysql_connect()を実行すると以下エラーがapacheのerror.logに記述されmysqlに接続できません。 PHP Fatal error: Call to undefined function mysql_connect() コマンドプロンプト上でphp test.phpと実行する場合は接続できます。 関係ないかもしれませんが、phpinfo()を確認したところ、Apache EnvironmentのPATHにC:\Program Files\PHP\が入っていません。コマンドプロンプト上でsetコマンドを実行するとC:\Program Files\PHP\がPATHに含まれています。apache、OSの再起動を実行しましたが改善しませんでした。 httpd.confおよびphp.iniはインストールウィザードに従い設定し、php.iniの外部モジュールを以下2つ以外コメントアウトする修正のみ行っております。 extension=php_mysql.dll extension=php_mysqli.dll 改善方法をご教授願います。

    • 締切済み
    • PHP
  • PHPのインストールができません

    PHPとApacheをインストールしてApacheは動作したのですが、PHPの動作確認でphpinfo() を行っても画面に「<?php phpinfo(); ?>」が表示されるだけでPHP情報が表示されません。 Windows7 professional PHP version:php-5.3.3-win32-vc6-x86.msi    インストール先:C:\PHP apache version:Apache 2.2.17      インストール先:C:\Program Files (x86)\Apache Software Foundation\Apache2.2 httpd.confには下記のものは追記済みです。 ServerRoot "C:/Program Files (x86)/Apache Software Foundation/Apache2.2" DocumentRoot "C:/Program Files (x86)/Apache Software Foundation/Apache2.2/htdocs" <Directory "C:/Program Files (x86)/Apache Software Foundation/Apache2.2/htdocs"> AddType application/x-httpd-php .php AddType application/x-httpd-php-souce .phps PHPIniDir "C:/PHP/" LoadModule php5_module "C:/PHP/php5apache2_2.dll" またphp.iniもshort_open_tag = Offになっています。 エラーログを見ましたが特にエラーは上がっていません。 いろいろなHPを見て調べたのですがわかりません。 インストールは主に下記のHPを参考にさせていただきました。 http://blog.livedoor.jp/yk_pointer/archives/65526007.html PHPについてはこれから勉強しようと思っているところですので むずかしいことはわかりませんが、何かヒントをいただければ 勉強しながら解決したいと思います すみませんがよろしくお願いします。

    • ベストアンサー
    • PHP
  • PHPとMySQLの連携について教えてください

    PHPからMySQLを使いたくて下記の環境を構築しました。 それぞれは正常に動作していますが、phpとmysqlの連携ができません。 PHP Version 4.3.10 MySQL Version 4.1.15 Apache 2.0.52 WindowsXP Home Edition ホスト名 localhost ユーザー名 root パスワード adminで firsttestというDBにテーブルを作成しました(DOSプロンプトから)。 そして次のコードを記述して実行すると下記のエラーが表示させます。 $conn=mysql_connect("localhost","root","admin"); // 5行目 mysql_select_db("firsttest",$conn); // 6行目 $res=mysql_query("show tables",$conn); // 7行目 --------- エラー画面----------- Warning: mysql_connect(): Client does not support authentication protocol requested by server; consider upgrading MySQL client in C:\Program Files\Apache Group\Apache2\htdocs\sweetsystem\dbtest.php on line 5 Warning: mysql_select_db(): supplied argument is not a valid MySQL-Link resource in C:\Program Files\Apache Group\Apache2\htdocs\sweetsystem\dbtest.php on line 6 Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in C:\Program Files\Apache Group\Apache2\htdocs\sweetsystem\dbtest.php on line 7 ------------------------------ MySQLを利用しないPHPプログラムは正常に動作しています。 またMySQLもDOSプロンプトからはテーブル等正常に作成できます。 初心者で先に進めずとても困っています。 解決策がありましたら教えてください。 宜しくお願いします。

    • ベストアンサー
    • PHP
  • 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 です。何故こんなエラーが出るかわかりません…。どなたか助けて頂けませんでしょうか。

  • Apache2が起動しなくなった!!

    はじめまして。さっそく質問なのですが、Apache2とPHP4の連動のために、Apacheのconfフォルダにあるhttpd.confの中身を設定通りいじって 「LoadModule php4_module c:/php/sapi/php4apache2.dll」←追加 「AddDefaultCharset none」←変更 「AddType application/x-httpd-php .php」←追加 そして、php.ini側では、 「doc_root = "c:/Program Files/Apache Group/Apache2/htdocs"」 「extension_dir = "c:/php/extensions"」←変更 でしましたが、その後、Apacheを再起動しようとするとエラーになって再起動ができなくなりました。 どなたか、なにか気になる点があれば教えて下さい!! お願いします。

    • ベストアンサー
    • PHP