Comment recueillir un gros fichier, chargez-le ajax, Affichez l'indicateur d'exécution et fusionner les pièces de fichier dans php?

Je veux écrire un script client avec un formulaire dans lequel vous pouvez télécharger un fichier volumineux. />2 Gb/ au serveur. Le serveur ne sera pas en mesure de traiter un tel fichier de chargement ordinaire. html, Par conséquent, le fichier doit être divisé en plusieurs parties de fichier. Par conséquent, ma forme html Tel est:


<form enctype="multipart/form-data" id="fileinfo" method="post" name="fileinfo">
<label>Your email address:</label>
<input autocomplete="on" autofocus="" maxlength="64" name="userid" placeholder="email" required="" size="32" type="email"/><br/>
<label>Custom file label:</label>
<input maxlength="32" name="filelabel" size="12" type="text"/><br/>
<label>File to stash:</label>
<input name="file" required="" type="file"/>
</form>
<a href="javascript:sendForm//">Stash the file!</a>


JQuery est:


function sendForm// {
var fd = new FormData/document.getElementById/"fileinfo"//;
fd.append/"CustomField", "This is some extra data"/;
$.ajax/{
url: "stash.php",
type: "POST",
data: fd,
processData: false, // tell jQuery not to process the data
contentType: false, // tell jQuery not to set contentType
success: function/response/{
console.log/"Response was " + response/;
},
failure: function/result/{
console.log/"FAILED"/;
console.log/result/;
}
}/;

};


Mon script php Pour le moment, très court, parce que je voulais juste vérifier si cela reçoit ces formulaires:

if /isset/$_POST['filelabel']/ / {
malléité/'sent'/;
malléité/$_POST, Où/;
}

Mais comment faire "blobs" et définir la taille des parties du fichier? Et comment agir alors? Tous les conseils, liens ou fragments du code seraient utiles!
Invité:

Guillaume

Confirmation de:

Je recommanderais d'utiliser le plugin jquery fileupload ... C'est le moyen le plus simple d'obtenir ce que vous voulez
https://blueimp.github.io/jQuery-File-Upload
Regardez également ce plugin attaché:
https://github.com/blueimp/jQu ... loads

Pour répondre aux questions, connectez-vous ou registre