- 締切済み
PEAR::DBの利用について
先日、LAMPのインストールが完了しました。 そこで、PHPからMySQLを操作するにPHPの拡張モジュールであるPEAR::DBを利用しようと考えました。 #sudo apt-get install pear とし、pearをインストールしたあとで、 #sudo pear install DB としてDBモジュールをインストールしました。 #sudo pear list Installed packages, channel pear.php.net: ========================================= Package Version State Archive_Tar 1.3.3 stable Auth_SASL 1.0.3 stable Console_Getopt 1.2.3 stable DB 1.7.13 stable Log 1.11.6 stable Mail 1.1.14 stable Net_SMTP 1.3.4 stable Net_Socket 1.0.9 stable PEAR 1.9.0 stable Structures_Graph 1.0.3 stable XML_Util 1.2.1 stable 上記がインストールされているものです。 しかし、MySQLにどうしても接続することができません。 /* require_once("DB.php"); // 接続設定 $dbtype = "mysql"; $sv = "localhost"; $dbname = "sampledb"; $user = "root"; $pass = "*******"; // データベースに接続する $dsn = "$dbtype://$user:$pass@$sv/$dbname"; $conn = DB::connect($dsn); if (DB::isError($conn)) { die("接続エラー"); } */ とくに必要な設定とかはあるのでしょうか? php.iniの設定をしなければならないなど。windowsの場合、インクルードパスにpearのインストール先絶対パスを追記したのを覚えています。 どなたか、アドバイスお願い致します。よろしくお願い致します。 環境やバージョン os Linux ubuntu 2.6.31-16-generic apache 2.2.12-1ubuntu2.1 mysql-server 5.1.37-1ubuntu5 php 5.2.10-2ubuntu6.3
- みんなの回答 (3)
- 専門家の回答
みんなの回答
「sudo apt-get install php5-mysql」をお試しください。
- oraora777
- ベストアンサー率20% (56/268)
直接の回答ではないけどPEAR:DBはメンテナンスのみで開発が終了しています。 PEARの公式サイトでもPEAR:DBからPEAR:MDB2に以降を促すメッセージが書かれています。 初めてやるならわざわざPEAR:DBを使う必要性は無いでしょう。 PEAR:MDB2を使いましょう。使い方もかなり同じで使えます。 >とくに必要な設定とかはあるのでしょうか? >php.iniの設定をしなければならないなど。 MySQLの動的ライブラリ(php_mysql.so)を呼び出すようになっている?
- mtaka2
- ベストアンサー率73% (867/1179)
具体的にどういうエラーが出ているのか教えてください。 connect直後のエラーチェックを、 if (DB::isError($conn)) { die($conn->getMessage()); } とすれば、エラーの詳細が表示されます。 それと、直接の回答ではありませんが、 PEAR::DB は古いライブラリです。今から新規にプログラムを作るのなら、PEAR::MDB2を使うことをオススメします。 http://itpro.nikkeibp.co.jp/article/COLUMN/20070827/280396/ http://project-p.jp/halt/anubis/blog_show/524
補足
ご回答頂き有難うございます。 エラー内容は、以下でした。 DB Error: extension not found これは、No.2さんのご回答にもありますように「php_mysql.so」ファイルがextensionされていないということでしょうか? php.iniの設定内容を確認しましたが、それらしき記述が見当たりません。 コンソール上で上記ファイルを探してみましたが、見当たりませんでした。apt-getでphpをインストールする場合、どのように指定してインストールすればいいのでしょうか? 申し訳ありませんが、アドバイスを引き続きお願い致します。 PEAR::MDB2は確認させて頂きました。PEARの本家サイトにも、導入のしかたが載っておりましたのでそちらも参考に致します。windowsで組んだプログラムがPEAR::DBを使用しているので、とりあえずは、PEAR::DBを使用する方向でお願い致します。
補足
ご回答下さりまして有難うございます。 PEAR::MDB2は、今後プログラムを組んでいく上で利用させて頂きます。的確なアドバイスをありがとうございます。 ところで、MYSQLのライブラリphp_mysql.soがエクステンションされておりませんでした。ライブラリが存在してしていないように思います。 No.1さんの補足をご確認頂き、引き続きアドバイス頂ければ幸いです。 よろしくお願い致します。