2012-12-13 32 views
3

我有什么似乎是一个相当基本的问题,并希望确认如何最好地处理它。我有一个表单,其中有一个输入是文件输入。在提交表单时,PHP会进行一些验证检查,以确认所有必填字段都已填写完毕(如果不是,则会通知用户填写剩余部分并再次向他们显示表单,而不提交它)。这一切都很好,但如果用户选择了一个文件,那么我不相信由于浏览器安全设置而将所选文件保留在输入内。如何保留表单提交后的文件输入值有错误?

因此,我可以看到保留文件输入的唯一方法是在初次提交时将其存储在服务器上(即使其他字段未完成),然后在提交时将其与提交相关联正确。或者使用Javascript来验证表单,以便它在实际完成之前不会被提交(所以文件输入不需要以编程方式设置)。

我在这里错过了什么,还有另一种处理这个问题的方法,或者我说这些是唯一的两个选项吗?

谢谢你们!

戴夫

+0

你也可以通过AJAX提交表单,但我想看到其他一些想法。 –

+0

可能重复的[恢复失败验证后输入类型=文件的值](http://stackoverflow.com/questions/4205634/restoring-the-value-of-a-input-type-file-after-failed验证) – hyde

回答

0

我想你已经提出了你的问题的答案。它最好使用ajax验证表单的其他字段,并且不要在最初提交文件。 anbd如果你有一些文件的问题,你可以使用类似的文件扩展名使用ajax一些基本的检查你的文件

+0

使用JS/AJAX进行验证的唯一问题是,如果用户有JS关闭它们,这将不起作用(尽管我们可以将PHP验证作为后备)。这就是为什么我想知道是否有其他选择(除了最初存储文件并在表单成功提交时将其重新关联) – deshg

相关问题