一回も披露したことのない豆知識

以前、ローカル(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のプログラムはすべて動作するのですが、データベースを使用するプログラムはすべて同様のエラーが発生します。

いろいろ、インストールの方法などを確認したのですが、結局何が原因か突き止めることができませんでした。
何かご存知の方、教えてください。

A 回答 (3件)

PHP 5.1.2の場合ですが


インストール時に解凍したファイルに"go-pear.bat"というファイルがあったと思います。これをダブルクリックしてください。質問項目は全部Enterでいいと思います。
"peardev.bat"というファイルが作成されたらコマンドプロンプトで"peardev.bat"のあるディレトリに移動して。
C:\~>peardev install DB
と入力してください。
    • good
    • 0
この回答へのお礼

php504さん回答ありがとうございます。
教えていただいた方法で、見事DB.phpのエラーは解消されました。
DB.php解消後もmbstringやMySQLとの接続のことなどいろいろ問題はありましたが、何とか一部のプログラムを除き正常に動作することを確認しました。
一部のプログラムについては再度調査してみます。
ありがとうございました。

以下のURLはその他の問題解決に役立ったHPです
http://homepage1.nifty.com/yito/anhttpd/faq/php5 …

お礼日時:2006/01/17 13:08

追加ですが、PHP5を入れられたのですね。


一応、No.1で紹介したPEARライブラリはPHP4での動作を仮定していますので
PHP5では、もしかすると動かないかもしれません。
PHP5はPHP4と極力互換性を持たせるようになっていますが
予約語が増えたりクラス周りが機能アップしていますので
動く保証が無いのです。
もし動かないのであればPHP5で動くDBライブラリを待つか(あるかもしれません)
DBの部分をライブラリを使わずに書き換えるかPHP5を4にバージョンダウンするしかありません。


サーバー周りのソフトは新しいバージョンがあるから
でインストールするのではなく必要だからインストールする。
という考え方がいいかもしれません。


PEARライブラリから落としたファイルはtgz形式のようですので
適当な解凍ソフトを使ってください。
一部ライブラリを書き換える必要もあるかもしれません。
    • good
    • 0
この回答へのお礼

YUTAKUN007さん早速回答ありがとうございます。
今回の件で「下手にバージョンアップしてはいけない」ということがよくわかりました。
ありがとうございました。

お礼日時:2006/01/17 13:00

推測で申し訳ないのですが


PEARのDBライブラリが導入されていないかと思います。
phpinfo();を実行してinclude_path変数に
設定されているディレクトリ配下に下のアドレスから持ってきたPEARのDBライブラリを置いてみてください。
DB.phpがPEARのライブラリで無い他のライブラリなら
意味はないですが。。。
PEARのDBライブラリと仮定しての話です。
http://pear.php.net/package/DB
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報