先日、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
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
具体的にどういうエラーが出ているのか教えてください。
connect直後のエラーチェックを、
if (DB::isError($conn)) {
die($conn->getMessage());
}
とすれば、エラーの詳細が表示されます。
それと、直接の回答ではありませんが、
PEAR::DB は古いライブラリです。今から新規にプログラムを作るのなら、PEAR::MDB2を使うことをオススメします。
http://itpro.nikkeibp.co.jp/article/COLUMN/20070 …
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を使用する方向でお願い致します。
No.2
- 回答日時:
直接の回答ではないけどPEAR:DBはメンテナンスのみで開発が終了しています。
PEARの公式サイトでもPEAR:DBからPEAR:MDB2に以降を促すメッセージが書かれています。
初めてやるならわざわざPEAR:DBを使う必要性は無いでしょう。
PEAR:MDB2を使いましょう。使い方もかなり同じで使えます。
>とくに必要な設定とかはあるのでしょうか?
>php.iniの設定をしなければならないなど。
MySQLの動的ライブラリ(php_mysql.so)を呼び出すようになっている?
この回答への補足
ご回答下さりまして有難うございます。
PEAR::MDB2は、今後プログラムを組んでいく上で利用させて頂きます。的確なアドバイスをありがとうございます。
ところで、MYSQLのライブラリphp_mysql.soがエクステンションされておりませんでした。ライブラリが存在してしていないように思います。
No.1さんの補足をご確認頂き、引き続きアドバイス頂ければ幸いです。
よろしくお願い致します。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- MySQL PHP 画像のアップロード Qiita 2 2022/11/28 04:44
- MySQL mysqlがインストールされているのかどうか 1 2023/06/05 14:19
- MySQL mysqlがインストールされているのかわかりません 1 2023/06/05 02:26
- PHP PostgreSQLからCSV形式でエクスポートする際にカラム内の改行をとる方法 1 2023/02/22 10:05
- PHP PHP MySql 画像を取得 1 2022/06/04 14:05
- PHP PHP一覧表示した項目にリンクをはりたい 1 2023/07/12 17:08
- UNIX・Linux raspberrypi に bluealsaを入れようにも見つからない 1 2023/02/04 10:55
- PHP eclipse pleiades phpのインストールについて 1 2023/02/03 17:15
- その他(プログラミング・Web制作) laravel 本番環境でメールが送れません。 1 2023/02/17 17:57
- PHP PHP MySql ページング 2 2022/09/20 06:38
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
xamppのDocumentRootでindex,ht...
-
xamppのバージョンの違いについて
-
phpinfoとphp -vのバージョンが...
-
xamppでGDを使いたい。
-
MAMPのユーザー名とパスワード
-
onedrive にexcelファイルをア...
-
VBSの「MsgBox」について
-
こちらはただの直列処理ですか?
-
複数ファイルを連続でダウンロード
-
パースエラーとは?
-
リンク先を隠す方法はないでし...
-
拡張子php画像をjpg画像等に変...
-
図に示す階層構造で,現在のデ...
-
C# Excelファイルへの画像挿入。
-
PHPとCSVで簡易データベースな...
-
Subversionで、ファイルをリネ...
-
ワードプレス、Contact Form 7...
-
include先でのinclude元の変数...
-
PHPのif文でその処理を途中で抜...
-
PHPでネットワークドライブのop...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
php.ini を設定を変更すると再...
-
apacheとphpの設定エラー
-
php_network_getaddresses: get...
-
php.iniの設定が反映されない
-
xamppでGDを使いたい。
-
xamppを使う場合のphpファイル...
-
PDFlib・・・日本語表示の設定??
-
xamppのDocumentRootでindex,ht...
-
Apache(Ver 2.4.4)の設...
-
phpinfoとphp -vのバージョンが...
-
phpをWEBサーバー上で実行できない
-
LinuxでのPHP、Configure Comma...
-
Fatal error: Call to undefine...
-
PHPにおいてopensslを有効にす...
-
date関数がgmdate関数と同じに...
-
PHPのアンインストール
-
require_onceの解釈について
-
ZendFrameworlkでZend_Session...
-
ubuntuで、phpのパスを通す
-
phpのpost処理の転送速度設定に...
おすすめ情報