• ベストアンサー

ファイルアップロード時のタイムスタンプ

PHPで画像ファイルをアップロードした際、 ファイルのタイムスタンプが更新されてしまいます。 あとで、アップされたファイルのタイムスタンプをみて処理させたいのですが 、タイムスタンプ(作成日時、更新日時)を更新させないでアップロードする方法はありますでしょうか。 アップロードする前のタイムスタンプをあらかじめ取得し、DBなどに登録しておいたほうがいいのかもしれませんが、できれば画像ファイルのタイムスタンプを更新させないでアップロードしたいです。

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

  • ベストアンサー
  • g_liar
  • ベストアンサー率52% (382/728)
回答No.2

タイムスタンプが更新? HTTPでアップロードされたファイルのタイムスタンプは、アップロードされた日時になりますが、そのことでしょうか? ファイルのアップロードについて定めているRFC1867にもタイムスタンプに関する記述はありませんので、タイムスタンプ情報は欠落すると思った方が良いです。 http://www.studyinghttp.net/rfc_ja/rfc1867 アップロードする前に取得しようにも、JavaScriptはセキュリティ上の理由でローカル資源にアクセスできませんからタイムスタンプの取得もできません。 作られているサイトがイントラ用のサイトで、使うブラウザをIE8などに限定できるのなら、セキュリティ問題を無視してVBScript他を使えばもしかしたら・・・って気はしますが、ごめんなさい。経験がないのでわかりません。

noname#136767
質問者

お礼

ありがとうございます。 なるほど難しそうですね。

その他の回答 (1)

  • localica
  • ベストアンサー率52% (202/385)
回答No.1

基本的にはアップロードされた時間がタイムスタンプになるのが正しい動作。 提示された要件を満たす方法は2つ 1.圧縮やtarなどファイルを固めてアップロードしてから展開する  ⇒画像のタイムスタンプを更新しない 2.書誌情報をもたせたXMLファイルなどに関連付けて管理する  ⇒画像と書誌情報を組み合わせる 1は小規模、2は中規模以上に向いている

noname#136767
質問者

お礼

ありがとうございます その手がありましたね~ 開発でソースのバージョン管理するときに tarを使ってファイルを更新させないようしてました。 ただ、ユーザがファイルをアップロードするのでいちいち圧縮させたり、tarに固めたりとかはさせられないと思います。

関連するQ&A