Bonjour à tous,
Je voudrais pouvoir envoyer des fichiers sur mon serveur:
Et lancer des requêtes avec le XMLHttpRequest pour en connaître régulièrement l'état d'avancement.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 <input type="file" id="Fichier1"/>
J'ai pas mal d'interrogation...
1) C'est lors du "Submit" que le navigateur envoi le fichier. Par conséquent, on est obligé de passer par la soumission du formulaire (et donc décharger la page actuelle pour charger celle définit dans la propriété "action"). Est-ce que on peut soumettre le formulaire sans pour autant qu'il charge une page à la fin? On est obligé de passer par une frame invisible?
2) La page va lancer l'envoi à la soumission du formulaire. Dès la validation, je lance un timer en JavaScript qui va aller checker l'avancement du fichier sur le serveur. Pour faire simple, j'ai envie de faire deux page. La première contenant le formulaire, la seconde me donnant juste le pourcentage d'avancement.
Dans la première, il faudrait détecter la validation du formulaire, récupérer tout de suite la taille totale du fichier que le navigateur va m'envoyer ainsi que son nom temporaire. Est-ce que c'est possible ça? Comme ça, hop je les mets en variable de session pour ma seconde page.
Ensuite j'attaque la seconde page avec le XMLHttpRequest de manière périodique. Celle-ci récupèrera dans les variables de sessions le nom du fichier ainsi que sa taille total et pourra donc aller regarder à combien il en est, faire le rapport et renvoyer le pourcentage.
Est-ce que sur le principe je suis dans le bon?
Merci beaucoup,
A bientôt
Partager