2012-12-13 51 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

相關問題