我有一个出租列表网站,用户可以在其中创建一个页面并显示他们列表的照片。我创建了一个包含多个文件输入字段的表单,供用户选择要上传的文件以及提交按钮:
<form method="post" enctype="multipart/form-data">
<input type="file" name="image_1" id="image_1" />
<input type="file" name="image_2" id="image_2" />
<input type="file" name="image_3" id="image_3" />
<input type="submit" name="submit" value="Submit" />
</form>
用户选择他们的图像后,我正在运行一个调整大小并上传它们的函数:
function uploadAndResize($imageFile, $filename) {
$folder = '../images/';
$orig_w = 400;
$filename = str_replace(' ', '_', $filename);
list($width, $height) = getimagesize($imageFile);
$src = imagecreatefromjpeg($imageFile);
$orig_h = ($height / $width) * $orig_w;
$tmp = imagecreatetruecolor($orig_w, $orig_h);
imagecopyresampled($tmp, $src, 0, 0, 0, 0, $orig_w, $orig_h, $width, $height);
imagejpeg($tmp, $folder.$filename, 100);
imagedestroy($tmp);
imagedestroy($src);
}
$imageFile_1 = $_FILES['image_1']['tmp_name'];
$filename_1 = basename( $_FILES['image_1']['name']);
$imageFile_2 = $_FILES['image_2']['tmp_name'];
$filename_2 = basename( $_FILES['image_2']['name']);
$imageFile_3 = $_FILES['image_3']['tmp_name'];
$filename_3 = basename( $_FILES['image_3']['name']);
uploadAndResize($imageFile_1,$filename_1);
uploadAndResize($imageFile_2,$filename_2);
uploadAndResize($imageFile_3,$filename_3);
我目前的设置非常适合上传照片,但我想用一个能够一次选择多个文件的文件输入字段替换多个文件输入字段。但是,我确实希望每个被选中的文件都具有“image_”的名称属性与下一次迭代相结合,这样它就可以很好地与我正在使用的当前脚本一起工作。我还需要它来为选择的尽可能多的文件调用该函数。
如何允许用户使用 php 和 jquery 从单个输入字段中选择多个文件,并且仍然可以使用我当前的脚本?