Forums : Xul, Xbl, JS...

Aller à la discussion :  Plus récente Plus ancienne

# Envoi de fichier en POST avec XMLHttpRequest

Envoyé par : Capripot

Date : 17/06/2006 01:19

Bonjour, c'est mon premier post sur ce forum et je compte bien en refaire ! Depuis longtemps l'idée de faire du Web 2.0, AJAX DHTML et compagnie me trottait dans la tête et je suis passé à l'acte ces jours-ci.

J'ai beaucoup avancé et appris peins de choses !

En revanche, je bloque vraiment sur un truc là : Je n'arrive pas a envoyer avec une requete XMLHttpRequest un fichier image d'un formulaire.

Pour vous montrer, tout est ici sous l'onglet "Ajout" : http://capripot.free.fr/webalbum/admin.(..) Lorsqu'on selectionne un fichier, tout est envoyé (tests à l'appui), sauf que le script PHP ne recoit rien lui ! (ou du moins pas ce qui faut ...)

//fonction pour faire des requetes sans recharger la page
function getHTTPObject(){
	var xmlhttp = false;
	/* on essaie de créer l'objet si ce n'est pas déjà fait */
	if (!xmlhttp && typeof XMLHttpRequest != 'undefined'){
		try{
			xmlhttp = new XMLHttpRequest();
		}
		catch (e){
			alert("erreur xmlhttp")
			xmlhttp = false;
		}
	}

	if (xmlhttp)
	{
		/* on définit ce qui doit se passer quand la page répondra */
		xmlhttp.onreadystatechange=function(){
			if (xmlhttp.readyState == 4){ //4 : état "complete"
				if (xmlhttp.status == 200){//200 : code HTTP pour OK
				/* Traitement de la réponse.
				Ici on affiche la réponse dans une boîte de dialogue. */
					alert(xmlhttp.responseText);
				}
				else{
					alert("erreur HTTP :\n\n "+xmlhttp.responseText)
				}
			}
			
		}
	}
	return xmlhttp;
}
//fonction associee aux input file de la partie ajout
function apercu(num){
	var xmlhttp = getHTTPObject();
    //envoi des données
	xmlhttp.open("POST", "apercu.php?id="+num, true); //ouverture asynchrone
	xmlhttp.setRequestHeader('Content-Type','multipart/form-data');
	xmlhttp.send(null);
}

Si vous avez une idées pour pouvoir envoyer un fichier tel qu'une image JPG ou PNG, ce serait super cool ;)

A aussi, je suis tombé sur ces ressources du site :

Je comprend la majorité des explications, sauf celles qui me concernent, l'envoi de fichier, si vous pouviez eventuellement m'expliquer comment appliquer ces solutions (paut-être que ce sont les bonnes...).

Merci d'avance pour votre aide.

Capripot

Il n'est plus possible de poster des messages dans ce forum.


Copyright © 2003-2013 association xulfr, 2013-2016 Laurent Jouanneau - Informations légales.

Mozilla® est une marque déposée de la fondation Mozilla.
Mozilla.org™, Firefox™, Thunderbird™, Mozilla Suite™ et XUL™ sont des marques de la fondation Mozilla.