0

在我的创建页面中,我正在使用一个或多个文件上传文本框,选择框,表单内的文本框,填写所有表单数据并提交后,我将进行服务器验证然后插入数据库...插入数据库之前,如果服务器验证失败,填充的数据会丢失,有没有简单的方法可以防止数据丢失?

对于选择和文本框,我们可以传递$_POST

但是对于文件上传文本框,如何防止数据丢失呢?我们可以在会话中存储吗?

提前致谢..

4

3 回答 3

1

那么您可以使用一些变量来存储数据,然后您可以执行验证

好吧,我给出了一个 php 验证的例子

<?php
  if(isset($_POST['submit'])){
    $name = $_POST['name'];  //
    // and some other data input
    and goes the validation part

?>

<form ... >
<input type="text" name="name" value="<?php if(isset($name)) echo $name; ?>"
</form>

好吧..这必须有效..您可能会找到其他更好的方法..但这也可以

于 2012-07-03T09:46:33.910 回答
1

据我所知,您不能像其他表单元素一样维护文件上传值。

如果您仍想维护 $_FILES 值。你可以带他们参加会议。

$_SESSION['imagename'] = $_FILES['image']['name'];
$_SESSION['imagetmp']  = $_FILES['image']['tmp_name'];
于 2012-07-03T10:36:03.980 回答
0

除了 type="file" 输入字段外,您可以将数据保存在变量中并稍后填充。如果可以预先填充文件(或者说未经用户许可选择)并且浏览器不允许这样做,这将是一个安全问题。

一种选择是将文件保存在服务器中的任何临时文件夹中,如果验证正常,请将其移动到上传目录。

另一种选择是在步骤中显示您的表单(在页面中)并在最后一步中显示文件上传选项,以便用户在所有验证后到达文件上传部分,您可以在最后一步中进行文件上传验证。

于 2012-07-03T11:31:06.417 回答