jquery ajax multiple upload - wysyłanie pojedynczych plików

0

Cześć,
mam wydaje się prosty problem. Chcę zrobić upload plików, który wysyła każdy plik oddzielnie. Chodzi o to, że używam

new FormData($('form')[0]);

ale to przesyła wszystkie pliki na raz.

W jaki sposób pobrać informację tylko o jednym pliku? (wiem, że mogę zrobić pętlę, ale czy da się jakoś obiektowo do tego podejść?)

<form enctype="multipart/form-data">
		<input name="file[]" type="file" multiple />
		<input type="submit" value="Upload" />
	</form>
$(document).ready(function (){
	$(':file').change(function(){
	
		var formData;
			formData = new FormData($('form')[0]);
			
			$.ajax({
				url: 'upload.php',  //Server script to process data
				type: 'POST',

				success: function(data){
					alert('Wysyłanie zakończone powodzeniem: ' + data);
				},

				data: formData,
				cache: false,
				contentType: false,
				processData: false
			});

		
	});

});

W kodzie PHP mam zwykłe move_uploaded_file().

0

A $('input[type=file]')[0] nie podziała?
Jak nie to formData = new FormData(); formData.append('file[]', $('input[type=file]')[0]); zdecydowanie już powinno

Edit: Jeżeli chodzi Ci o wysłanie wszystkich plików, ale w kilku requestach to tak - musisz zrobić pętlę.

0

Tylko jak przesyłam jako:

formData = new FormData($('form')[0]);

to mogę pobrać wyniki wypisując:

$_FILES['file']['name'][0]; // 0 (zero) to numer kolejny pliku

1 użytkowników online, w tym zalogowanych: 0, gości: 1