php – JQuery多文件上传
发布时间:2020-12-13 15:56:33 所属栏目:PHP教程 来源:网络整理
导读:我尝试使用以下代码上传多个文件时遇到问题.当我尝试选择多个文件时,我只显示多个文件中的第一个文件.如何获取所有这些文件名以及临时名称和类型等所有信息? 这是用于多次上传的HTML代码: form id="imageform" method="post" enctype="multipart/form-data
我尝试使用以下代码上传多个文件时遇到问题.当我尝试选择多个文件时,我只显示多个文件中的第一个文件.如何获取所有这些文件名以及临时名称和类型等所有信息?
这是用于多次上传的HTML代码: <form id="imageform" method="post" enctype="multipart/form-data" action='ajaxImageUpload.php' style="clear:both"> <h3>Upload your Documents Here</h3> <div id='imageloadstatus' style='display:none'><img src="loader.gif" alt="Uploading...."/></div> <div id='imageloadbutton'> <style> .col-md-4 { float: none; } </style> <div class="col-md-4"> <div class="input-group"> <label for="startDate">Select Month-Year :</label><br /> <input name="startDate" id="startDate" class="date-picker form-control" placeholder="Select Month-Year" /> </div> <br /> <br /> <script src="js/jquery.monthpicker.min.js"></script> <script> $(document).ready(function() { $('#startDate').monthpicker(); }); </script> <input type="file" name="photos[]" id="photoimg" multiple="true" class="form-control" /> </div> <br /> <br /> </div> </form> 这是JQuery ajax调用: $('#photoimg').die('click').live('change',function(){ //$("#preview").html(''); if($('#startDate').val()=='' || $('#startDate').val()==null ) { alert("Select Month/year"); return false; } else { var d=$('#startDate').val(); $.ajax({ type: "POST",url: "mdoc_upld.php",data: {'startDate':d,'files': $('#photoimg').val()} }).done(function(data){ $("#preview").html(data); }); } }); 最后,这是上传文件的处理方式: require_once "connection.php"; define ("MAX_SIZE","9000"); function getExtension($str) { $i = strrpos($str,"."); if (!$i) { return ""; } $l = strlen($str) - $i; $ext = substr($str,$i+1,$l); return $ext; } $valid_formats = array("pdf","xls","xlsx","doc","docx"); if(isset($_POST) and $_SERVER['REQUEST_METHOD'] == "POST") { print_r($_POST);exit; if(isset($_POST['startDate']) && $_POST['startDate'] !='') { $d=$_POST['startDate']; // $unixtime = 602294400; $time = date("Y-m",$d); //echo $time ; } 对print_r的调用只显示一个文件名,但它应该是所有文件名的数组吗? 如何访问上传的所有文件? 解决方法
我发现这个教程用于多个图像上传.
here is link to tutorial
如果你想上传pdf文件或任何其他文件,你只需要在ajaxImageupload.php中替换以下行 $valid_formats = array("jpg","png","gif","bmp","jpeg"); 用这条线 $valid_formats = array("pdf","docx"); 在此添加更多文件扩展名. 还有一件事,如果您正在按照本教程为任何文件类型上传多个文件,您只需要替换以下代码jquery.wallform.js var exp = /<img[^>]+>/i; expResult = data.match(exp); if(expResult == null) { alert("Something went wrong."); } else{ $(options.target).prepend(data); } 使用此代码: $(options.target).prepend(data); 在这里你完成了.享受和信誉到9lessons (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |