Enviando multipart / formdata con jQuery.ajax

Tengo un problema al enviar un archivo a un script PHP del lado del servidor usando la función ajax de jQuery. Es posible obtener la Lista de archivos con$('#fileinput').attr('files') pero ¿cómo es posible enviar estos datos al servidor? La matriz resultante $_POST) en el servidor php-script es 0 NULL) cuando se usa la entrada de archivo.

Sé que es posible (aunque no encontré ninguna solución de jQuery hasta ahora, solo el código Prototye http: //webreflection.blogspot.com/2009/03/safari-4-multiple-upload-with-progress.htm)).

Esto parece ser relativamente nuevo, así que no mencione que la carga de archivos sería imposible a través de XHR / Ajax, porque definitivamente está funcionando.

Necesito la funcionalidad en Safari 5, FF y Chrome serían buenos, pero no son esenciales.

Mi código por ahora es:

$.ajax({
    url: 'php/upload.php',
    data: $('#file').attr('files'),
    cache: false,
    contentType: 'multipart/form-data',
    processData: false,
    type: 'POST',
    success: function(data){
        alert(data);
    }
});

Respuestas a la pregunta(12)

Su respuesta a la pregunta