我使用krajee bootstrap多个文件输入。当我浏览更多图像文件时,$_FILES
中的图像值已经消失。
首先浏览此Image1.jpg
,然后在上传后再次点击浏览按钮浏览更多图片文件Image2.jpg
我只获得了最后一张图片Image2.jpg
提交后我尝试print_r($_FILES["imagenes"]["name"])
。这是结果。
Array
(
[0] => Image2.jpg
)
当我点击浏览更多内容时,如何保留我选择的所有文件?
我的代码:
<form method="post" enctype="multipart/form-data">
<input id="input-repl-1a" name="imagenes[]" type="file" class="file-loading" accept="image/*" multiple>
<button type="submit" name="upload">Upload</button>
</form>
Krajee文件输入
<script type="text/javascript">
$("#input-repl-1a").fileinput({
uploadUrl: false,
autoReplace: false,
overwriteInitial: false,
showUploadedThumbs: false,
showUpload: false,
uploadAsync: false,
maxFileCount: 5,
initialPreviewShowDelete: false,
showRemove: false,
showClose: false,
layoutTemplates: {actionDelete: ''}, // disable thumbnail deletion
allowedFileExtensions: ["jpg", "png", "gif"],
layoutTemplates: {
actions: '<div class="file-actions">\n' +
' <div class="file-footer-buttons">\n' +
' {delete}' +
' </div> \n' +
'</div>',
}
});
</script>
PHP上传
if(isset($_FILES["imagenes"]["name"])) {
$TotalImage = count($_FILES['imagenes']['name']);
for($i=0;$i<$TotalImage;$i++)
{
$filename = $_FILES["imagenes"]["name"][$i];
$files = $_FILES["imagenes"]["tmp_name"][$i];
$file_basename = substr($filename, 0, strripos($filename, '.')); // get file extention
$file_ext = substr($filename, strripos($filename, '.')); // get file name
$allowed_file_types = array('.jpg','.png', 'jpeg');
if(in_array($file_ext,$allowed_file_types))
{
$randOctalName = openssl_random_pseudo_bytes(16);
$randName = bin2hex($randOctalName).$file_ext;
$image_to_db = $randName;
$width = 640;
$size = GetimageSize($files);
$height = round($width*$size[1]/$size[0]);
if($file_ext == '.jpg') {
$images_orig = ImageCreateFromJPEG($files);
} else if($file_ext == '.png') {
$images_orig = ImageCreateFromPNG($files);
} else if($file_ext == '.jpeg') {
$images_orig = ImageCreateFromJPEG($files);
}
$photoX = ImagesX($images_orig);
$photoY = ImagesY($images_orig);
$images_fin = ImageCreateTrueColor($width, $height);
ImageCopyResampled($images_fin, $images_orig, 0, 0, 0, 0, $width+1, $height+1, $photoX, $photoY);
if($file_ext == '.jpg') {
ImageJPEG($images_fin,"upload/".$randName, 90);
} else if($file_ext == '.png') {
ImagePNG($images_fin,"upload/".$randName, 9);
} else if($file_ext == '.jpeg') {
ImageJPEG($images_fin,"upload/".$randName, 90);
}
ImageDestroy($images_orig);
ImageDestroy($images_fin);
} else {
}
}
}