Mam problem z wysłaniem pliku na serwerowy skrypt PHP przy użyciu funkcji ajax w jQuery. Możliwe jest pobranie listy plików, $('#fileinput').attr('files')
ale jak można wysłać te dane na serwer? Wynikowa tablica ( $_POST
) po stronie skryptu php to 0 (NULL
) podczas korzystania z wejścia pliku.
Wiem, że jest to możliwe (chociaż do tej pory nie znalazłem żadnych rozwiązań jQuery, tylko kod Prototye ( http://webreflection.blogspot.com/2009/03/safari-4-multiple-upload-with-progress.html ) ).
Wydaje się to być stosunkowo nowe, więc proszę nie wspominać, że przesyłanie plików byłoby niemożliwe przez XHR / Ajax, ponieważ zdecydowanie działa.
Potrzebuję funkcjonalności w Safari 5, FF i Chrome byłyby fajne, ale nie są niezbędne.
Mój kod na razie to:
$.ajax({
url: 'php/upload.php',
data: $('#file').attr('files'),
cache: false,
contentType: 'multipart/form-data',
processData: false,
type: 'POST',
success: function(data){
alert(data);
}
});
$(':file')
aby wybrać wszystkie pliki wejściowe. To tylko trochę prostsze.