Bon voilà, j'avais besoin de faire un envoi d'image en temps réel, i.e. que la personne puisse uploader une image au serveur sans avoir à changer de page.

J'ai réussi avec quelque chose que j'ai trouvé sur le web. Mais voilà que mon client me demande d'envoyer l'image sans avoir à cliquer sur un bouton de type "submit".

Rien de plus facile vous me direz, juste à faire un "document.formname.submit();" sur l'événement "onchange" de l'input file. Le problème c'est qu'au lieu de loader la page dans la i-frame, l'événement charge ma page d'upload dans le navigateur, donc je me retrouve à changer de page.

Voici mon code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
<form action="send_pict.php" enctype="multipart/form-data" method="post" name="send_pict_form" onsubmit="this.target = 'UploadTarget1'; send_pict();">
 
<input type="file" name="photo" id="photo" onchange="document.send_pict_form.submit();" />
 
<input name="envoyer" id="envoyer" type="submit" value="Envoyer" />
 
<iframe id="UploadTarget1" name="UploadTarget1" src="" style="width:531px;height:300px;border:1;"></iframe>
 
</form>
Comment pourrais-je forcer le formulaire à s'exécuter dans ma i-frame à partir de l'événement onchange?