• 締切済み

phpでのmysql接続におけるエラー

どうも、プログラミング初心者です。 今回、phpからのmysql接続においてエラーが発生したのですが、 回避方法がいまいちわからないので教えていただきたいです。 自分がやろうとしているのは1つのファイル内で2つの別々の関数を呼び出して実行させるだけなのですが、 それぞれの関数内でデータベースに接続してDBのデータを操作しようとしたところ、1つの関数は動作するのですが、後から呼び出す関数がサーバーと接続できず、エラーとなってしまいます。 たぶん、同一のDBに2回アクセスしようとしているところが問題の原因だとは思うのですが、回避方法がわかりません。 どなたか教えていただけますか? ちなみに関数は2つとも別のファイルに書いてあり、それをrequire_onceで読み込んでいる形です。 簡単に書くと main.php  require_once('call_db_func01.php'); ← それぞれの関数の中で  require_once('call_db_func02.php'); ← 同じDBにアクセスしている  ***  CallDBFunc01(); ← 一つ目の関数は正常に動作  ***  CallDBFunc02(); ← サーバーに接続できないと言われる ちなみに個々でテストするとどちらも正常に動作することは確認済みです。 どうぞ、よろしくお願いします。

  • PHP
  • 回答数1
  • ありがとう数0

みんなの回答

  • tomaju
  • ベストアンサー率76% (84/110)
回答No.1

エラーメッセージを拝見したいです。 公開してまずそうなところは適宜伏字化してください。 それぞれの関数で、データベースに接続している箇所を拝見したいです。(mysql_connect でしょうか?) ホスト、ユーザー、パスワード等公開してまずいものは伏字にしてください。

関連するQ&A

  • さくらのレンタルサーバーでDB.php読み込み失敗

    下記の環境でPHPを書いています。 ・さくらのレンタルサーバ スタンダード ・PHP 5.2.13 ・php.iniファイルパス /home/******/www/php.ini その中で、require_once("DB.php");と記述をしているのですが、 その部分で下記のエラーが発生します。 Warning: require_once(DB.php) [function.require-once]: failed to open stream: No such file or directory in /home/xxx/www/class/db.class on line 6 Fatal error: require_once() [function.require]: Failed opening required 'DB.php' (include_path='.:/usr/local/php/5.2.13/lib/php') in /home/xxx/www/class/db.class on line 6 2ヶ月ほど前に作成した時は間違いなく正常に動作していたのですが・・・。 久しぶりにアクセスしたらこんなエラーが出ていて途方にくれています。 推測できる原因はありますでしょうか?

    • ベストアンサー
    • PHP
  • 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
  • phpMyAdminでPHPのエラーのようなものが出てしまう

    WordPressを使いたいため、現在MySQLとphpMyAdminでデータベースの構築をしているところなのですが、phpMyAdminにアクセスするとPHPのエラーが発生していしまいます。 何か回避方法はありませんでしょうか? エラー↓ Warning: require_once(./libraries/dbi/.dbi.lib.php) [function.require-once]: failed to open stream: No such file or directory in D:\04WebServer\public_html\phpMyAdmin\libraries\database_interface.lib.php on line 18 Fatal error: require_once() [function.require]: Failed opening required './libraries/dbi/.dbi.lib.php' (include_path='.;C:\php5\pear') in D:\04WebServer\public_html\phpMyAdmin\libraries\database_interface.lib.php on line 18 よろしくお願いします。 Windows 2000 Server 04WebServer最新版 PHP 5.25 SQL 5.0(5.0.67) phpMyAdmin 2.6.4-pl2 http://drestyle.dip.jp/test.php

    • ベストアンサー
    • MySQL
  • MySqlに接続できない

    環境:PHP5,MySql5,XP 下記の構文でDBへの接続エラーがでます。 php.iniでのインクルードpathの設定もあっています。 (DB.phpも上記インクルードpathにあります) 'pear list'コマンドでDBも確かにインストールされています。 これ以外でチェックするところがあれば、教えてください。 <?php // DBクラスモジュールをインクルード require_once("DB.php"); $dbtype = "mysql"; $sv = "localhost"; $dbname = "********"; $user = "root"; $pass = "******"; // データベースに接続する $dsn = "$dbtype://$user:$pass@$sv/$dbname"; $conn = DB::connect($dsn); if (DB::isError($conn)) { die("接続エラー"); } ?>

    • ベストアンサー
    • PHP
  • PEARでOracleへ接続時にエラー

    Linuxサーバ環境でpearを用いてPHPからOracleに接続したいのですがうまくいきません。 <?php require_once("DB.php"); $dsn = "oci8://SCOTT:tiger@DBサーバIP/DB名"; $db = DB::connect($dsn); if (DB::isError($db)) { echo "接続エラー"; } else { echo "接続成功"; } ?> というPHPにアクセスすると、接続エラーとしか表示されません。 接続先のDBに該当のユーザは存在しており、このWebサーバからSQLplusで sqlplus scott/tiger@//DBサーバIP:1521/DB名 で接続はできております。 OS:CentOS 5.2 (VMWare上で稼働) カーネル:2.6.18-92.el5 Apache:2.2.9 PHP:5.2.6 PHP-PEAR:1.4.9 接続先Oracle:9.2.0.1.0 (イントラ同セグメント内で稼働) 尚、同様の方法でWebサーバ内で稼働しているMysqlへは問題なく接続できております。 以上、心当たりのある方がいらっしゃいましたらお願い致します。

    • 締切済み
    • PHP
  • PHPでMySQLのDBに接続

    PHP,MySQLが使えるレンタルサーバーを借りているのですが, PHPでMySQLに接続し、php_dbを選択をするようにしたいのですが、 この時DBファイルはどこに置けばいいのでしょうか? 現在はMySQLの管理コマンド(?)とは別にpublic_htmlの中に PHPフォルダを作り、そこにDBファイルを入れています。 PHPのスクリプトは <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head><title>練習</title> <meta http-equiv="content-language" content="ja"> <meta http-equiv="Content-Type" content="text/html; charset=euc-jp"> </head><body> <?php $con = mysql_connect(); if (!$con) { echo ("Error:MySQLに接続できませんでした。<br />"); } else { echo ("接続ID=$con<br>\n"); } $selectdb = mysql_select_db("php_db" ,$con); if (!$selectdb) { echo ("Error:データベースを選択できませんでした"); } else { echo ("データベースphp_dbを選択しました。"); } ?> </body></html> としています。 MySQLには接続ができるのですが、php_dbには接続ができません。 php_dbのおき場所を変えるのか、ファイルの指定が間違っているのか その他、どの要に変更をしたらよいのでしょうか? お願いします。 環境はレンタルサーバーがLINUXでPHPのバージョンなどはわからないんです・・・!! 開発がOSがW2kでFTPで転送してます。

    • ベストアンサー
    • PHP
  • mysqlに接続が出来ません

    mysqlとphpを使ってウェブアプリを作ろうとしていますが、mysqlへの接続が出来ません。接続に失敗するのではなく「not found」と言われます。試しにgetDebugInfo()の出力は、「Unable to include the DB/.php file for ''」となります。 環境は、WinXpのxampp1.5.5 です。あるサイトで上記のようなメッセージはpearがおかしいのではという記述を見て、xampp自体を再インストールもして見ましたが変わりません。 DB/table共に存在しデータも入っておりコマンドラインからは、アクセスが出来ます。 もう一つデストラクタを宣言していると、以下の様なエラーが出るので コメントアウトしています。 Fatal error: Call to a member function disconnect() on a non-object in hogehoge.php 以下にコードを載せますので何が間違っているのかご教授ください。 ------------------------------------------------------------ require_once("DB.php"); class MyDb {  private $_db;  private $dsn = array(         'phptype' => "mysqli",         'hostspec' => "localhost",         'database' => "vhmaster",         'username' => "webuser",      );  private $option = array(         "autofree"=>TRUE,         "debug"=>1,         "portability"=>DB_PORTABILITY_ALL       );  public function __construct(){    $_db=DB::connect($dsn,$option);    if(DB::isError($_db)){      #print_r(get_loaded_extensions());      die("接続失敗:".$_db->getDebugInfo());    }  }  /*  public function __destruct(){    $_db->disconnect();  }  */ } --------------------------------------------------------

    • 締切済み
    • PHP
  • DB.phpが見つからない

    以前、ローカル(Windows2000)上でApache + PHP4 + MySQL1.4でデータベースを使用したPHPのプログラムを作っており、正常に動作もしておりました。 ある時、システムが不安定になってきたのでシステムのリカバリーを行い、あらかじめMySQLのデータとPHPのソースを逃がしておきました。 リカバリー後はせっかくなのでApache2 + PHP5 + MySQL1.4で設定を行い、逃がしておいたデータ等をすべて戻し、PHPを起動してみると、 Warning: require_once(DB.php) [function.require-once]: failed to open stream: No such file or directory in ファイルパス on line 行数 と、いったエラーが表示されます。 データベースを使用しないPHPのプログラムはすべて動作するのですが、データベースを使用するプログラムはすべて同様のエラーが発生します。 いろいろ、インストールの方法などを確認したのですが、結局何が原因か突き止めることができませんでした。 何かご存知の方、教えてください。

    • ベストアンサー
    • 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
  • PHPのmysql関数について

    RedHat7.2のFTP版でそのまま内包されているPHP3,PHP4をインストールしました。 通常の関数は使用できるのですが、mysql_connectを使ってDBにアクセスしようとすると Fatal error: Call to undefined function: mmysql_connect() in xxx on line xxx というようなエラーになります。 関数が使えないってこういうことってありうるのでしょうか? どなたか原因をお知りでしたら教えてください。 (Apahe ,mysqldは正常に起動した状態です。)

    • ベストアンサー
    • PHP

専門家に質問してみよう