プロが教えるわが家の防犯対策術!

phpで以下のエラーが出ております。
いろいろ試しているのですが、解決できません。
各種設定ファイルに設定の誤りがあるのでしたら教えていただきたいと思います。

1)Fatal error: main(): Failed opening required '' (include_path='.;c:\php\includes') in C:\Apache2\htdocs\aaa\ins.php on line 26
2)Fatal error: main(): Failed opening required '' (include_path='.;c:\php4\pear') in C:\Apache2\htdocs\aaa\ins.php on line 26

c:\php4\pearというディレクトリは存在しないがなぜか出る。

3)Fatal error: main(): Failed opening required '' (include_path='.;c:\php\includes\aaa') in C:\Apache2\htdocs\aaa\ins.php on line 26
4)Fatal error: main(): Failed opening required '' (include_path='.;C:\Apache2\htdocs\aaa') in C:\Apache2\htdocs\aaa\ins.php on line 26


##ins.phpのソース:
$tpl = "ccc.tpl";
require_once($tpl);

##ディレクトリ構成
C:\Apache2\htdocs\aaa
ins.php
ccc.tpl

##php.iniの設定:
---有効にした場合1)のメッセージ
include_path = ".;c:\php\includes" 
---コメントアウトした場合2)のメッセージ
;include_path = ".;c:\php\includes" 
---以下のpathにフォルダを作成してccc.tplを配置した場合3)のメッセージ
include_path = ".;c:\php\includes\aaa"
---以下のpathを指定した場合4)のメッセージ
include_path = ".;C:\Apache2\htdocs\aaa"


##httpd.confの設定:
line 231
DocumentRoot "C:/Apache2/htdocs"

line 256
<Directory "C:/Apache2/htdocs">
AllowOverride Options AuthConfig


##環境
os:winXP
apache2:apache_2.0.58
php:PHP Version 4.4.1

A 回答 (2件)

>##ins.phpのソース:


>$tpl = "ccc.tpl";
>require_once($tpl);

ins.phpソースを以下のようにしてみて下さい。
$tpl = "./ccc.tpl";
require_once($tpl);

この回答への補足

回答をありがとうございます。
ins.phpを以下のように変更しましたが、2)のエラーが出ました。php.iniのinclude_path=はコメントにしています。


$tpl = "./ccc.tpl";
require_once($tpl);

Fatal error: main(): Failed opening required '' (include_path='.;c:\php4\pear') in C:\Apache2\htdocs\aaa\ins.php on line 26

ソースよりもphp.iniの設定が優先されているようです。

補足日時:2006/07/26 18:20
    • good
    • 0
この回答へのお礼

ccc.tplのみ文字コードが違って保存されていました。
文字コードを修正し、$tpl = "./ccc.tpl";
と記述することで無事解決しました。
ありがとうございました。

お礼日時:2006/08/13 19:12

ins.phpのソースというのは 書かれている2行だけですか??


まぁ省略されていて、その行が26行目なんだと思いますが・・

違っていたら以下は無視してください

単純に$tpl(ccc.tpl)が見つからないだけだと思いますが。
パス指定してないので、カレントフォルダを探して、ない場合は
設定されているパスを検索しに行ってるのだと思います。

なので、設定のミスというよりは、プログラム関連ファイルの
設置場所ミスでしょうか。

ccc.tpl の場所を再確認してみてはいかがでしょうか。

2)のphp4っていうのがphpデフォルトなのかしら?

この回答への補足

回答をありがとうございます。
ccc.tpl の場所は
C:\Apache2\htdocs\aaa
配下です。

C:\Apache2\htdocs\aaa
配下に
ccc.tpl
ins.php
が同階層で配置されています。
phpの中でパス指定するということでしょうか。

補足日時:2006/07/26 18:16
    • good
    • 0
この回答へのお礼

ccc.tplのみ文字コードが違って保存されていました。
文字コードを修正し、$tpl = "./ccc.tpl";
と記述することで無事解決しました。
ありがとうございました。

お礼日時:2006/08/13 19:12

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