- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:レッツPHP「写メールBBS」にてファイル名変更を)
iPhoneからのメール送信で添付画像が上書きされてしまう問題
このQ&Aのポイント
- iPhoneからのメール送信で、添付画像が一律「image.jpeg」というファイル名になり、過去の同名ファイルが上書きされる問題が発生しています。
- ファイル名を取得する際にランダムな文字を末尾に追加することで、ファイル名の重複を回避できる可能性があります。
- mailbbs.php内の175行目「ファイル名を抽出」以降に何かを加えることで問題が解決できる可能性があります。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
そもそも投稿されたファイル名を使うのが好みじゃないんだけどね(汗 // 添付データをデコードして保存 のちょっと下の $tmp = base64_decode($m_body); if (!$ext) $ext = $sub; if (!$original || !$filename) $filename = $now.".".$ext; の次あたりに if (file_exists($tmpdir . $filename)) { $now.".".$ext; } も追加すればいいと思う(重複するファイル名だったら「ファイル名がない」ときと同様に自前のファイル名を与える)。 $now じゃなくて、md5($tmp)でも可だし、個人的には全部 md5($tmp) . "." . $ext とかにしたい(もちろん、$extはextf_imagetype($tmp)の戻り値を元に決定する)。
お礼
ご教示頂いた方法で解決する事が出来ました。 この度はありがとうございました。