• ベストアンサー

ファイルのアップロード先

環境:PHP5&Apache2(&MySQL5)&XP ファイルをアップロードする場合、 http:///****/test/test01.php でtest01.phpがアップロードを行うファイルだった場合、 testフォルダに直接アップロードする方法はあるのでしょうか。 php.iniのupload_tmp_dirの記述で、アップロードフォルダを設定したあと、ファイルを移動するしかないのでしょうか。 アドバイスいただけると幸いです。

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

  • ベストアンサー
  • BellBell
  • ベストアンサー率54% (327/598)
回答No.2

セキュリティ的な問題であったり、ファイル名をxxxxxx.tmpとして同一ファイル名のものがアップされても上書きされないようにしているってところで、そのような仕様になっているのだと思います。 ini_setではupload_tmp_dirを変更できないようなので、その方法しかないのだと思います。 move_uploaded_fileを使って移動させればよいだけなので(同時にリネーム可能)、特に問題のある仕様だとは思えませんが。 いちいち面倒だという心の声は、セキュリティセキュリティと繰り返し唱えて、抑えましょう。

idek
質問者

お礼

早速お返事いただき、ありがとうございます。 アップする人は、ただ一人なので、単純に考えていました。 Win系のIIS&VBしか使ったことが無かったので、(Basp21) 違和感を感じました。 テンポラリを通してやってみます。

その他の回答 (1)

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

>直接アップロード 直接やりたいという根拠は? 少なからぬタイムラグ発生することから考えてもテンポラリを 通すのが賢明ですが・・・

idek
質問者

お礼

早速お返事頂き、ありがとうございます。 テンポラリを通してやってみます。 まだ、PHPでは一本目の初心者です。 (IISにBasp21というのがあり、これ専門でした。これは直接アップしていました) PHPではこれが標準のやり方のようで、こちらでやってみます。