簡體   English   中英

如何允許用戶使用php和jquery從單個輸入字段中選擇多個文件?

[英]How do I allow users to select multiple files out of a single input field using php and jquery?

我有一個出租清單網站,用戶可以在其中創建頁面並顯示其清單的照片。 我創建了一個帶有多個文件輸入字段的表單,供用戶選擇要上傳的文件以及一個提交按鈕:

<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);

我目前使用的設置非常適合上傳照片,但是我想用一個文件輸入字段替換多個文件輸入字段,該文件輸入字段可以一次選擇多個文件。 但是,我確實希望每個選擇的文件都具有與下一迭代結合的name屬性“ image_”,以便它與我正在使用的當前腳本很好地配合。 我還需要它來為選定的許多文件調用該函數。

如何允許用戶使用php和jquery從單個輸入字段中選擇多個文件,並且仍然可以在當前腳本中使用它?

在HTML表單輸入元素中使用“ mutiple”屬性。

例如:

<input type="file" name="attacheDocument" multiple="multiple" />

返回文件數組。

請參閱出色的教程, 教程顯示了如何在php中使用多文件jquery插件。 請注意,您將必須遍歷php代碼中的文件(請參閱上述教程。)

我建議您http://valums.com/ajax-upload/

使它工作起來有些困難,但是結果卻很棒。 允許:

.-多個文件
。- 進度條

該插件包含一個可以輕松修改的php腳本。 只需在我向您展示的頁面中進行測試即可。

使用jQuery多文件上傳插件。 這很簡單。 參考以下鏈接

http://www.fyneworks.com/jquery/multiple-file-upload/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM