This page contains the following errors:

error on line 81 at column 456: EntityRef: expecting ';'

Below is a rendering of the page up to the first error.

日本PHPユーザ会 掲示板: PHP事はじめ » HTMLの送信とファイルのダウンロードを同時にするにはどうするのですか

日本PHPユーザ会 掲示板

日本PHPユーザ会運営の掲示板です。※ただいまテスト運用中です。

日本PHPユーザ会 掲示板 » PHP事はじめ » HTMLの送信とファイルのダウンロードを同時にするにはどうするのですか

HTMLの送信とファイルのダウンロードを同時にするにはどうするのですか

ページ: 1

投稿者 投稿
会員
登録者: 6 2008
返信数: 5
:( 例えば、htmlのフォームで処理したいファイル名指定して、PHPファイルに送信します。
PHP側では、受取ったファイル名のファイルを読み込んで、処理した後、出力します。
このような時
function dataout($fname){
 header(attachment;filename={$_FILES['upfilename']['name']}");
 header("Content-Type: application/x-csv");
 header("Content-Length: .filesize($fname)");
 readfile($fname);
}
で、ファイルをダウンロードさせる事が出来るのですが、このfunctionで、
ダウンロードさせる前に、print文やhtmlタグで、処理内容等を表示させていると、
表示されず、全部ダウンロードするファイルの中身といっしょに送られてしまいます。
 header出力は一度しか出来ないのでしょうか、マルチパートにしたい時はどうすれば
よいのでしょうか?
(以上 )
« 最終編集者 YON 日時 2008 年 6 月 19 日(木) 10:34. »
会員
登録者: 6 2008
返信数: 5
:? 以下の方法を思いつきました。難しいかも知れませんが。
①予めダウンロードさせるPHP(download.php)を別に作っておく。
②呼び出されたPHPは、自身のHTML出力が終った後、
function calldownload(){
 $host = $_SERVER['HTTP_HOST'];
 $uri = rtrim(dirname($_SERVER['PHP_SELF']), '/\\');
 $extra = 'download.php';