画像添付のメール送信フォームの件です。
下記のような流れになっています。
1.送信フォーム
↓
2.確認画面
↓
3.送信完了
1のPOSTから2のPOSTまで、$_FILES['hoge']['tmp_name']の値を引き継げないようなので、
1のPOST送信時に$_FILESの画像を一旦サーバに保存する必要があります。
確認画面から前に戻る場合や戻るボタンを押された場合には、
一時保存した画像を削除することができますが、
2の確認画面でブラウザを閉じてしまった場合は、
一時保存画像がサーバ上に残ってしまうことになります。
これを防ぐ方法はありませんでしょうか?
確認画面をなしにすれば、サーバ上に画像が残ることを防げますが、
確認画面がどうしても必要になるため、
$_FILESの値を引き継げない現状では、
定期的にcronで、一時保存画像を掃除するくらいしか思いつきません。
それ以外に良い方法はありますでしょうか?
よろしくお願いいたします。
No.3ベストアンサー
- 回答日時:
>$_FILESのファイルデータはセッションでも引き継げないようです。
「画像データ」を読み込んでセッション変数に入れてもダメでしたか?
(e.g.)
$_SESSION['gazou'] = file_get_contents($_FILES['upfile']['tmp_name']);
> file_get_contents
気づきませんでした!!!
file_get_contentsでセッションに入れて、
送信時にfile_put_contentsで戻して、
送信完了後に削除という流れでいけました!
これであれば確認画面の際には画像がアップされていません。
これでサーバに画像が残ることはなくなりました。
file系の関数をもうちょっと勉強しておきます。
ありがとうございました!
No.2
- 回答日時:
セッションを使ってセッション変数に入れてしまえばいいのでは?
この回答への補足
ご回答ありがとうございます。
全てのデータはセッションに入れていますが、
$_FILESのファイルデータはセッションでも引き継げないようです。
よろしくお願いいたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP php 入力画面から確認表示画面へ情報の受け渡しについて。 1 2023/06/07 18:00
- PHP php 確認表示画面で値をSESSIONから取り出す理由の解釈は正しいでしょうか? 1 2023/06/09 17:39
- PHP PHPで入力フォームでデータを確認表示画面まで送る流れを日本語で理解したいのです。 1 2023/05/29 19:12
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- デスクトップパソコン スマホからメール添付でパソコンへ送った画像が開かない 4 2023/06/06 17:19
- Outlook(アウトルック) PCで登録途中の画面から認証コードを確認する方法を教えてください。 3 2022/09/29 06:11
- PHP php 完了画面の送信メールのコードを書いているのですが・・・ 2 2023/06/02 12:01
- Gmail Gmailの設定。送られて来た添付画像を返信する際、添付されないようする設定の仕方を知りたい。 2 2022/09/20 23:43
- 防犯カメラ・監視カメラ・小型カメラ VHSを高画質な動画ファイルにしたいです。 3 2022/05/06 12:08
- その他(メールソフト・メールサービス) サンダーバードメール送信について パソコンのサンダーバードから携帯メールにpdfの書類を送信しました 1 2022/08/11 07:15
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
php 入力画面から確認表示画面...
-
フォームを使わずにPOST送信す...
-
php history.back()の戻るボタ...
-
htmlspecialcharsについて
-
POSTで受け渡したものを保存し...
-
switch()文で値の大小比較
-
PHPのセッション有効期限について
-
DTOとEntityの差は何ですか。
-
phpでcookieがうまく保存されない
-
wordの差し込み印刷で文字...
-
Dosブロンプトでtabを出力したい
-
アクセスの度にIPアドレスを変...
-
syntax error, unexpected 'ech...
-
「取得先」という表現について
-
バッチファイルでpingの結果を...
-
C++で特定のURLにアクセスする...
-
【C#】DataGridViewの最大列数...
-
.htaccessについて
-
URLのパラメータをGETのままで...
-
session_start()で生成されるセ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ログイン画面から入って、「戻...
-
php 入力画面から確認表示画面...
-
IFRAME内PHPのセッション変数取...
-
php に関して質問です。 各ユー...
-
HTMLエスケープ処理とデーター...
-
POSTで受け渡したものを保存し...
-
「ページネーション」で検索キ...
-
VBAで重複チェックの仕方を教え...
-
PHPで返信メールにチェックボッ...
-
フォームを使わずにPOST送信す...
-
asp.netでのセッションを使用し...
-
飛び先のランダムURLの取得方法...
-
php history.back()の戻るボタ...
-
閉じるボタン「×」を制御したい
-
ブラウザの戻るボタンで重複登...
-
ウェブアプリの設計に問題がな...
-
ブラウザバックしてもチェック...
-
ページに時間制限
-
PHPで値を保持する方法
-
パスワード認証後の、以降のペ...
おすすめ情報