[PHP-users 26995] ダウンロードヘッダー出力後の処理の制御

竹内彰 a.takeuchi @ net-staple.com
2005年 9月 27日 (火) 14:24:47 JST


はじめまして、ステイプルと申します。
今回初めて投稿します。

画像のダウンロード処理を行なった後に、DB内にフラグを立てる処理をしています。
下記のようにヘッダーを出力すると、ファイルのダウンロードというダイアログボッ
クスが
立ち上がりますが、この時点で既に次の処理、すなわちDBにフラグが立ってしまいま
す。

ダイアログボックスでキャンセルボタンを押すとダウンロードはされませんが、
DBにフラグを立てる処理が既に行なわれてしまい具合がよくありません。

保存ボタンを押した場合だけフラグが立つように処理をしたいのですが、
ダイアログボックスの保存ボタンをトリガーとする処理の仕方をご存知の方が
おられましたらご教授をお願いいたします。
また保存ボタンを押した後でも保存先を聞いてきますが、ここでも
保存とキャンセルの選択がありますので同様の処理が必要となります。

//ヘッダー出力
  header("Content-Type: application/octet-stream");
  header("Content-Disposition: attachment; filename={$file}");
//ファイルを開き読み込んで出力
  $fp = fopen(LOAD_FILE, "r") or die("ファイルが開けません\n");
  while ($line = fgets($fp)) {
       echo $line;
  }
  fclose($fp);
//DBにフラグを立てる処理
    (処理スクリプト)

---------------------------------------------
OS  Linux Fedora Core3
PHP 4.3




PHP-users メーリングリストの案内