Faire du POST avec Ajax, ça ne fonctionne pas?

Nouveau WRInaute
Bonsoir, tout d'abord je tiens a informé que j'ai déjà regardé sur google et ici même pour m'aider, hélas sans aucun succès.

Je vous expose donc mon petit problème :

J'ai une page, dans cette page j'ai un div où j'affiche mon formulaire.
Et j'aimerais que se formulaire passe par de l'Ajax. Et donc ne rafraîchît que le div dans lequel il est.

Seul petit problème, dans se formulaire j'ai 3 informations, un input de type text, un autre de type hidden, et un dernier de type file.

Voici la partie que j'ai trouvé sur internet et dont j'avoue la non fonction :(
Code:
if(methode=='POST'){
		// si POST envoi du header et des paramètres
		http_ajax.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8');
		http_ajax.send(param);
		}else{
		http_ajax.send(null);
		}
Sa ne fonctionne que pour un paramètre d'après ce que je comprend..
C'est d'ailleurs quasiment les mêmes exemples partout sur internet.


Si une âme charitable pourrait m'aider dans ma quête, merci d'avance, et désolé pour le dérangement !
 
Nouveau WRInaute
Bonsoir,

Pour effectuer une requête POST, il faut effectivement spécifier l'entête :
Code:
http_ajax.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8');
Ensuite si tu veux envoyer des paramètres à ta page, tu dois passer par la methode send()
Code:
http_ajax.send(param);
param est de la forme param1=valeur1&param2=valeur2
  • Il faut spécifier le nom et la valeur du parametre séparés par un égal.
  • S'il y a plus d'un parametre, il faut les séparer par un &
 
Nouveau WRInaute
Merci pour ta réponse rapide !

Si je comprend bien ce que tu dis, ça donnerais ça :
Code:
// si POST envoi du header et des paramètres
      http_ajax.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=UTF-8');
var content_text = document.monform.input_de_type_text.value;
var content_hidden = document.monform.input_de_type_hidden.value;
var content_file = document.monform.input_de_type_file.value;
var param = "file="+content_file+"&hidden="+content_hidden+"&text="+content_text;
      http_ajax.send(param);
?
 
Nouveau WRInaute
On dit parfois que la nuit porte conseil et c'est le cas, je viens de comprendre comment faire et j'ai pondu cette petit fonction qui va interroger ma fonction "interroge" =>

Code:
function submitAdd_Logo()
{ 
	var content_text = document.ajout_logo.logo_titre.value;
	var content_hidden = document.ajout_logo.sub.value;
	var content_file = document.ajout_logo.logo_fichier.value;
	interroge("POST", "news-ajax.php?action=add_logo", "logo_fichier="+content_file+"&sub="+content_hidden+"&logo_titre="+content_text, "content");
}

et ça fonctionne :)

Merci pour votre aide ;)
 
Discussions similaires
Haut