Php 上载多个图像时获取多个json对象
当我上传多个图像时,我的控制台中没有任何信息,但当我上传一个图像时,该图像的信息会显示在我的控制台中。我想要的是,如果我上传一个以上的图像,我就可以得到这些信息,这样我就可以通过Php 上载多个图像时获取多个json对象,php,jquery,Php,Jquery,当我上传多个图像时,我的控制台中没有任何信息,但当我上传一个图像时,该图像的信息会显示在我的控制台中。我想要的是,如果我上传一个以上的图像,我就可以得到这些信息,这样我就可以通过add缩略图()函数在页面中循环显示这些信息 当我上传多张图片时,这会显示在我的“网络”选项卡中的响应中 {"name":"kitten_01.jpg"}{"name":"kitten_05.jpg"} 我的控制台是空白的,但当我上传一张图片时 {"name":"kitten_05.jpg"} 我把它放在控制台里 O
add缩略图()
函数在页面中循环显示这些信息
当我上传多张图片时,这会显示在我的“网络”选项卡中的响应中
{"name":"kitten_01.jpg"}{"name":"kitten_05.jpg"}
我的控制台是空白的,但当我上传一张图片时
{"name":"kitten_05.jpg"}
我把它放在控制台里
Object { name: "kitten_05.jpg" }
这是我的main.js
$(document).ready(function(){
var dropZone = document.getElementById('drop-zone');
$(".upload-area").on('drop', function(e){
e.preventDefault();
var files_list = e.originalEvent.dataTransfer.files;
var formData = new FormData();
for(i = 0; i < files_list.length; i++){
formData.append('file[]', files_list[i]);
}
$.ajax({
url:"upload.php",
method:"POST",
data:formData,
contentType:false,
cache: false,
processData: false,
dataType: 'json',
success:function(response){
addThumbnail(response);
}
})
});
dropZone.ondragover = function(e){
return false;
}
dropZone.ondragleave = function(e){
return false;
}
});
function addThumbnail(data){
var len = $("#drop-zone div.thumbnail").length;
var num = Number(len);
num = num + 1;
var name = data.name;
console.log(data);
$("#uploaded-image").append('<div id="thumbnail_'+num+'" class="thumbnail"></div>');
$("#thumbnail_"+num).append('<img src="uploads/'+name+'" width="100%" height="78%">');
}
这是因为在循环中,每个数组都是自己编码的。取而代之的是,制作一个数组数组,只在循环之后对整个内容进行编码,就是这样。真不敢相信这么简单。
$allowed = ['png', 'jpg'];
foreach($_FILES['file']['name'] as $key => $name)
{
$temp = $_FILES['file']['tmp_name'][$key];
$ext = explode('.', $name);
$ext = strtolower(end($ext));
$return_arr = array();
if(in_array($ext, $allowed) && move_uploaded_file($temp, 'uploads/'.$name))
{
$return_arr = array("name" => $name);
}
echo json_encode($return_arr);
}
$allowed = ['png', 'jpg'];
$return_arr = array();
foreach($_FILES['file']['name'] as $key => $name)
{
$temp = $_FILES['file']['tmp_name'][$key];
$ext = explode('.', $name);
$ext = strtolower(end($ext));
if(in_array($ext, $allowed) && move_uploaded_file($temp, 'uploads/'.$name))
{
$return_arr = array("name" => $name);
}
}
echo json_encode($return_arr);