dポイントプレゼントキャンペーン実施中!

PHPを実行した結果、ブラウザが受け取る情報を名前を付けてhtmlで保存する方法を教えてください
今のところブラウザの「ソースを表示」で開いて名前を付けて保存しています
具体的にはMySQLのテーブルを参照して表示項目を変更し、名前を付けてhtmlで保存したいと考えています

A 回答 (2件)

実際には再帰的につくればよいでしょう。


こんな感じです。テストしてみてわからないようで
あればまた質問してください。

//enquete.php

<?PHP
if($_GET["download"]==true){
if ($_GET["filename"]=="") $_GET["filename"]="download.html";
header("Content-Type:download;charset=sjis-jp");
header("Content-Disposition: filename=${_GET[filename]}");
//SQL処理
$html_body="結果";
}else{

$html_body=<<<eof
<form action="$PHP_SELF" method="get">
質問の選択あれこれ・・・<br>
<hr>
ファイル名:<input type="text" name="filename">
<input type="submit" value="作成">
<input type="hidden" name="download" value="true">
</form>

eof;
}
print $html_body;
?>

この回答への補足

環境を離れていてテストが遅くなりました
テストしたところ

Warning: Cannot modify header information - headers already sent by (output started at ****)
が2つ表示されました

headerの取り扱いなどに関して無知なので
アドバイスをいただければ幸いです。

補足日時:2005/10/06 14:35
    • good
    • 0

適当なファイル名をつけてhtmlファイルをダウンロード


したいというご希望なのでしょうか?
それでしたら以下のようにするとよいかと。

<?PHP
if($_GET["download"]==true){
header("Content-Type:download;charset=sjis-jp");
header("Content-Disposition: filename=download.html");
}
?>
test

charsetは適当に書き換えてください。
ファイル名は任意でつけることも可能です。

ちなみに
>MySQLのテーブルを参照して表示項目を
>変更し、名前を付けてhtmlで保存

という部分の意味がよくわかりません。
sqlの部分は質問者様の知識でクリアになっている
のですよね?

この回答への補足

質問が下手ですみません。

アンケート管理画面を作り3つの機能を作りました
1質問入力->Tableに書き込み
2質問組み合わせ変更->Tableの'y'/'n'の変更
3アンケート画面確認->'y'の質問だけ読み込んでアンケート画面表示

MySQLのTable(省略してます)
質問A,'y'
質問B,'n'

この先他の人が色々と質問を入れ、好きなものだけ組み合わせ、画面確認したら名前を付けて.htmlで保存したいのです。
3で
<form action="download.php">保存</form>
download.phpに
教えていただいた通りに記述すればよいのでしょうか?
今は自分しか使わないので、3で表示された画面を「表示」「ソース」してメモ帳にコピー&ペーストして名前を付けて.htmlで保存しています。
SQLは慣れていますがPHPは不慣れです。

補足日時:2005/09/29 20:06
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!