[PHP-users 28101] Re: Undefined index: upfileとUse of undefined constantメッセージについて

大塚 goroneko @ pop17.odn.ne.jp
2006年 1月 13日 (金) 12:45:40 JST


自己レスです。

画像置き場所は
$path = dirname($_SERVER['PATH_TRANSLATED']).IMG_DIR;
で取っていたのですが、どうやら$_SERVER['PATH_TRANSLATED'])が取得できていなかったようです。

そこで、取得できないのならということで
$path = "c:\\htdocs\\picture\\";
とベタで書いてあげたところ問題なく動きました。

色々と相談にのっていただいてありがとうございます。
なぜ、$_SERVER['PATH_TRANSLATED'])が取得できないのか気持ち悪さが残るものの一応解決できました。

> 大塚です。
> 
> >  Setoです。
> > 
> > >> 
> > >> php4.3.11で
> > >> error_reportingをE_ALL に設定してみても
> > >> 上記と同じエラーは出ませんか?
> > >
> > >実は、こちらの方はASPで借りているマシンなのでphp.iniを触れないんですよ。現
> > >象が起きているphp5.1の方は触れますが。
> > 
> > 実行時に変更できるはずです。
> > http://jp.php.net/manual/ja/function.error-reporting.php
> 
> 同じ現象になりました。裏で出てはいたんですね。
> 
> > >> またはPOST後の処理先頭で
> > >> print_r($_POST);
> > >
> > >なるほど。しかし、upfileは配列の中に入っていませんでした。ちなみにPOSTした
> > >データ以外にも$_FILES['upfile']['name']も出てくる物なのでしょうか?
> > 
> > こちらは間違えました。
> > print_r( $FILES ); ですね。
> 
> print_r( _$FILES );
> と書き直して、
> 
> Array ( [upfile] => Array ( [name] => DVC00025.JPG [type] => image/pjpeg [tmp_name] => C:\PHP\uploadtemp\php10.tmp [error] => 0 [size] => 23991 ) )
> 
> と出てきました。変数は入っていたのですね。
> で、先ほどのメールに書ききれませんでしたが、
> 
> >Warning: move_uploaded_file(/picture/DVC00025.JPG) [function.move-uploaded-file]: failed to open stream: No such file or directory in C:\htdocs\bbs.php on line 272
> 
> >Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move 'C:\PHP\uploadtemp\php10.tmp' to '/picture/DVC00025.JPG' in C:\htdocs\bbs.php on line 272
> 
> というエラーだけが表示されるようになりました。
> パーミッションを確認して、C:や\phpや\uploadtempを確認しましたが、全てのユーザが書き込み権限を付与しています。
> <DocumentRoot>/picture/の権限を見ても同様です。
> 
> 勘違いをしているのでしょうか。あとこのメッセージだけです。ご存知であればご教授ください。
> 
> Satoさん>本当に感謝します。ありがとうございます。



PHP-users メーリングリストの案内