我正在使用此代码上传文件夹文件。
<form action="file_transfer.php" method="post" enctype="multipart/form-data" name="form1">
<input type="file" name="file_input[]" id="file_input" multiple="" webkitdirectory="">
<input type='submit' class='btn' id='btn_upload_file' value='UPLOAD' data-loading-text='loading....'/>
</form>
和file_transfer.php
$uploads_dir = 'C:/xampp/htdocs/awoc_inspection/Images/IMAGES/';
for($i = 0; $i < sizeof($_FILES['file_input']['name']); $i++){
$tmp_name = $_FILES['file_input']['tmp_name'][$i];
$name = $_FILES['file_input']['name'][$i];
echo $_FILES['file_input']['tmp_name'][$i];
echo $_FILES['file_input']['name'][$i];
echo"<br/>";
move_uploaded_file($tmp_name, "$uploads_dir/$name");
}
它没有显示任何错误,但是当我转到C:/ xampp / htdocs / awoc_inspection / Images / IMAGES / 文件夹没有图像。我不知道为什么这段代码无法移动上传的文件夹文件请帮帮我:(
答案 0 :(得分:0)
它没有打印错误,因为你没有要求它做:
echo $_FILES["file"]["error"][$i];
问题可能是您的目录没有很好的权限尝试chmod 775或777 也这样做:
echo $result = move_uploaded_file($tmp_name, "$uploads_dir/$name");
检查$ result是true还是false,如果为false则移动文件没有完成
答案 1 :(得分:0)
尝试使用以下内容更改for
条件
for($i = 0; $i < sizeof($_FILES['file_input']); $i++) {
...
答案 2 :(得分:0)
我已经克服了自己的问题:) ..感谢大家的答案...我无法上传图片的唯一问题是因为我试图上传的图片是3mb以上和最大值在php中上传file_size是2mb。
我已将php.ini更改为
;;;;;;;;;;;;;;;;
; File Uploads ;
;;;;;;;;;;;;;;;;
; Maximum allowed size for uploaded files.
; http://php.net/upload-max-filesize
upload_max_filesize = 50M