後でフォームの記入を完了できるように、個人のフォームデータを保存できるフォームを作成しようとしています。データを外部ファイルに保存するのに問題はありません。ユーザーが全ページのフォームに入力した後でのみデータの保存を許可されていれば、私がやろうとしていることを簡単に実行できることを知っています。ただし、複数のページの1つが完全に完成していなくても、いつでもフォームのデータを保存できるようにしたいと思います。また、CGI.pmフォームコマンドを呼び出す代わりに、Perlスクリプトを介して独自のhtmlスクリプトを使用するのが好きです。
そのため、ユーザーはセッションの終了時に不完全なデータを保存し、後でパスワードを使用してログインしてデータを取得します。だから私はパスワードに基づいて外部ファイルからデータを取得します
#--------------------------------------------
open(INFO, "MYTEXTFILE.txt");
@data = <INFO>;
close(INFO);
#--------------------------------------------
foreach $key (@data)
{
($aaa1,$aaa2,$aaa3,$aaa4,$aaa5,$e)=split(/,/,$key);
}
次に、利用可能なデータをhtmlフォームに入力し直そうとします。データがテキストボックスで収集されている場合、これは非常に簡単です。
print"
<p>Your response is: input type='text' name='aaa1' value='$aaa1' <\p>";
ただし、ラジオボタンの場合はさらに注意が必要です。私が使う:
print"
<table width='600' align='center' cellpadding='3'>
<tr bgcolor=''>
td bgcolor=''>1. Question #1
</td>
<td>1
<input name='aaa1' type='radio' value='1'"; if ($aaa1==1) {print " CHECKED ";} print"/>/td>
<td>2
<input name='aaa1' type='radio' value='2'"; if ($aaa1==2) {print " CHECKED ";} print" />/td>
<td>3
<input name='aaa1' type='radio' value='3'"; if ($aaa1==3) {print " CHECKED ";} print" />/td>
<td>4
<input name='aaa1' type='radio' value='4'"; if ($aaa1==4) {print " CHECKED ";} print" />/td>
<td>5
<input name='aaa1' type='radio' value='5'"; if ($aaa1==5) {print " CHECKED ";} print" />/td>
</tr>
</table>
";
それを行うためのより便利なまたは便利な方法はありますか?