0

PHPスクリプトをHTMLドロップダウンメニューに関連付けようとしています。このPHPスクリプトは、テキストエリアから入力を受け取り、送信すると、フォームから入力または「ファイル」をダウンロードするようにユーザーに要求します。ただし、ドロップダウンリストからの各選択がダウンロード時に独自の拡張子を持つようにすることも必要です。例:ドロップダウンオプションの1つが「PHP」で、そのオプションが選択されている場合、ユーザーが「名前を付けて保存」ボタンを使用してファイルを保存すると、ファイルには自動的に拡張子「.php」などが含まれます。 。どういうわけかこれを行うことは可能ですか?

4

2 に答える 2

0

はい。

あなたが提案する1つの方法は、フォームを送信として処理することですPOST.クライアント側では、フィールドvalue属性に保存されている拡張子をフォームに選択させます. サーバー側で、$_POST.var の$_POST[ 'field' ].

それを行う別の方法は、リソースを返すスクリプトに設定されたソースを使用してドキュメントに iFrame を追加することです。その場合、次のようになり、変数をscript.php?field=valueチェックして、PHP で設定している拡張機能のタイプを判断します。$_GET$_GET[ 'field' ]

于 2012-06-14T01:34:00.880 に答える
0

次のようなフォームがあるとします。

<form action='myphpfile.php' method='post'>
    <input type='text' name='filename' /> 
    <select name='extension'>
        <option value='php'>PHP</option>
        <option value='html'>HTML</option>
    </select>
    <input type='submit' value='Save As' />
</form>

次に、PHP ファイルで 2 つの値を連結します。

$file = $_POST['filename'] . '.' . $_POST['extension'];

そして、ファイルへのリンクをユーザーに送り返します。

編集:完全なPHPファイルの例:

myphpfile.php:

<?php
$file = $_POST['filename'] . '.' . $_POST['extension'];
header("Content-disposition: attachment; filename=$file");
readfile($file);
?>
于 2012-06-14T02:40:36.190 に答える