先日、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.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さんの補足をご確認頂き、引き続きアドバイス頂ければ幸いです。
よろしくお願い致します。
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を使用する方向でお願い致します。
お探しの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ランキング
-
php.ini を設定を変更すると再...
-
xamppのDocumentRootでindex,ht...
-
ZendFrameworlkでZend_Session...
-
xamppを使う場合のphpファイル...
-
apacheとphpの設定エラー
-
xamppでGDを使いたい。
-
PHPのWARNINGをcatchするには
-
フォントの色を変えるには?
-
phpでPEAR::DBを使っているので...
-
別ファイルの変数を呼び出した...
-
onedrive にexcelファイルをア...
-
PHPのif文でその処理を途中で抜...
-
バッチを用いたフォルダの自動移動
-
現在位置より2つ上のディレク...
-
CSV出力にHTMLが入ってしまう
-
「クラス関数」「メンバ関数」...
-
phpでメール送信できません 原...
-
one drive のアップロード失敗...
-
さくらサーバーにて、phpからメ...
-
index.phpに入るには、どうすれ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
php.ini を設定を変更すると再...
-
xamppのDocumentRootでindex,ht...
-
PDFlib・・・日本語表示の設定??
-
xamppを使う場合のphpファイル...
-
Fatal error: Call to undefine...
-
phpinfoとphp -vのバージョンが...
-
PHPにおいてopensslを有効にす...
-
globで日本語のファイル名が文...
-
さくらインターネットでphp.ini...
-
localhostでphpのページが表示...
-
ロリポップでのphp.iniの編集の...
-
apacheとphpの設定エラー
-
php.iniの設定が反映されない
-
ApacheでPHPを使いたい
-
いいかげんxamppなんとかしたい...
-
メールのエラーについて
-
phpをWEBサーバー上で実行できない
-
phpMyAdminはSSL下でアクセスす...
-
phpのpost処理の転送速度設定に...
-
mbstringが無効
おすすめ情報