• ベストアンサー

PHP4 LINUXサーバー

「PHP4でカンタンWebDB構築ガイド」を見て、ファイルのアップロードのプログラムを書いてみましたが、参照..→送信の後に表示される筈のuserfile,user_file_name,user_file_size,user_file_typeの情報が表示されません。 また、このサンプルソフトでは、サーバーにアップロードされた筈のファイルが、具体的に何処のフォルダにアップロードされたのか分かりません。何処かデフォルトで保存される場所でもあるのでしょうか? <FORM ENCTYPE="multipart/form-data" ACTION="upload.php" METHOD=POST> <INPUT TYPE ="hidden" name="MAX_FILE_SIZE" value="1000"> <INPUT NAME="userfile" TYPE="file"> <INPUT TYPE="submit" VALUE="送信"> </FORM> <?php print "\$userfile = ". $userfile . "<BR>"; print "\$userfile_name = ". $userfile_name . "<BR>"; print "\$userfile_size = ". $userfile_size . "<BR>"; print "\$userfilei_type = ". $userfile_type . "<BR>"; ?>

質問者が選んだベストアンサー

  • ベストアンサー
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

テンポラリとしてアップされますのでそれをコピーしてつかってください <?php print "\$userfile_name = ". $_FILES['userfile']['name'] . "<BR>"; print "\$userfile_size = ". $_FILES['userfile']['size'] . "<BR>"; print "\$userfile_type = ". $_FILES['userfile']['type'] . "<BR>"; print "\$userfile_tmp_name=". $_FILES['userfile']['tmp_name'] . "<BR>"; ?>

teo98
質問者

お礼

早い回答をありがとうございます。

その他の回答 (1)

回答No.2

PHP4も4.1.xx以降はregister_globalsがデフォルトOFFになっています(セキュリティの関係上)。アップロードされたファイルは$userfile_nameではなく、アップロードされたファイルを扱うスーパーグローバル$_FILES変数に格納されています。 アップロードされるファイルはデフォルトのupload_tmp_dirに格納されます。Linuxの場合は/tmpあたりがデフォルトの指定フォルダになっていると思います(インストール時設定やphp.iniの設定による)。 PHPマニュアルのアップロードのところをよく読むといいと思います。 http://jp.php.net/manual/ja/features.file-upload.php

teo98
質問者

お礼

版数次第だとは知りませんでした。ありがとうございます。