我有一个巨大的表单,允许用户(以及许多其他输入)上传多个图像,如下所示:
<input type="file" id="product_images" class="hidden" name="upload[]" multiple>
<input type="file" id="product_images_2" class="hidden" name="upload[]" multiple>
...
现在,当某个输入中出现错误时(例如,"description"字段的字符串太短),页面会重新加载。重新加载后,我需要将所有发布的数据保留在所有输入中。对于文本输入,我知道该怎么做,如下所示:
<input name="name" type="text" value="<?php echo $_POST['name']; ?>"/>
但是,如何为file
输入实现此目的?我尝试了这样的事情:
<input type="file" id="product_images" name="upload[]" multiple value="<?php print($_POST['upload']); ?>">
虽然没有工作。有什么想法吗?谢谢!
也许这是因为您正在服务器中验证,请尝试在浏览器中验证您的字段,如果服务器重新加载它将丢失保存在字段中的所有数据。
亲自尝试这个验证器,我喜欢它:http://jqueryvalidation.org/
跳跃它帮助
$_SESSION["image_path"] = $_POST['upload'];
<input type="file" id="product_images"<?php values= if(empty($_session['image_path'])) {} else { echo $_session['image_path']; } ?>class="hidden" name="upload[]">
检索后,销毁会话
尝试在输入栏中使用对您有帮助的pattern
,您可以非常轻松地做到这一点
http://www.wufoo.com/html5/attributes/10-pattern.htmlhttp://www.w3schools.com/tags/att_input_pattern.asp