我正在尝试为输入(sql插入)表单创建一个完整的验证页面。
我通常会做以下操作来保留页面上已经输入的值,以防某个验证失败(在这种情况下,用户会返回到表单进行更正,并显示错误)。
echo 'value=" ';
if(isset($_POST['NewGameName'])){
echo $_POST['NewGameName'];
} // for text-fields
echo '<option value="'.$i.'" ';
if(isset($_POST['Score'])){
if($i == $_POST['Score']){
echo'selected="selected"';
}
}
echo '>'.$i.'</option>'; // for dropdowns
但是,如果刷新页面,我似乎找不到保存文件位置的方法。有办法做到这一点吗?我读到过,出于安全原因,它总是被清除,这会很烦人,但如果它是标准的,我想人们已经习惯了。
您可以创建一个隐藏字段来存储文件名,并通过在实际文件字段上使用onchange事件通过javascript更改名称。一旦文件名更改,就可以更新隐藏字段值。您可以在post变量中获得隐藏字段值,并使用此变量刷新文件字段的值
我认为您有两个选项。
-
就是使用Ajax进行验证。这样就不会将表单留给文件路径。
-
验证后使用javascript在历史
history.go(-1)
中返回到上一屏幕。我认为在使用历史记录时,表单条目会被保留。