IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

AJAX Discussion :

[AJAX] R�cup�rer une variable javascript dans une page php (envoi de mail)


Sujet :

AJAX

  1. #1
    Membre �clair�
    Homme Profil pro
    Conseil - Consultant en syst�mes d'information
    Inscrit en
    Ao�t 2008
    Messages
    557
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 39
    Localisation : France, Bouches du Rh�ne (Provence Alpes C�te d'Azur)

    Informations professionnelles :
    Activit� : Conseil - Consultant en syst�mes d'information
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Ao�t 2008
    Messages : 557
    Par d�faut [AJAX] R�cup�rer une variable javascript dans une page php (envoi de mail)
    Bonjour,

    je cherche � faire un formulaire de contact, j'en suis au niveau o� j'ai r�cup�r� les donn�es entr�es par l'utilisateur mais uniquement par javascript.

    Or je sais que la fonction mail() en php permet d'envoyer ben des mails.

    Donc en fait j'ai ma page formulaireContact.php (avec javascript)

    et dans ma page confirmation.php, je voudrais r�cup�rer en php la variable javascript "contenuMail". La page confirmation serait une nouvelle page, ou popup vierge, qui traiterait juste l'envoi de mail en mettant une phrase � la fin pour confirmer que le mail a bien �t� envoy�.

    J'ai cru comprendre qu'il fallait que je me serve de l'objet XMLHttpRequest, mais je patauge car c'est la premi�re fois que j'essaye.

    Si vous pouvez me donner quelques indications svp.

    J'ai fait le test navigateur :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    var xhr=createXMLHttpRequestObject();
     
    		function createXMLHttpRequestObject(){
     
    			var xhr;
     
    			if(window.XMLHttpRequest) // Firefox
    				xhr = new WMLHttpRequest();
    			else if(window.ActiveXObject) //IE
    				xhr = new ActiveXObject("Microsoft.XMLHTTTP");
    			else{
    				alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest.");
    				return;} // sortie de la fonction
     
    		}
    Mais pour le reste, je pense que je vais avoir besoin de trucs comme

    xhr.open("GET","formulaireContact.php",false);

    if(xhr.readyState==4)


    Mais je ne sais pas o� c'est que je dois le faire, dans quelle page, etc...

  2. #2
    Membre �clair�
    Homme Profil pro
    Conseil - Consultant en syst�mes d'information
    Inscrit en
    Ao�t 2008
    Messages
    557
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 39
    Localisation : France, Bouches du Rh�ne (Provence Alpes C�te d'Azur)

    Informations professionnelles :
    Activit� : Conseil - Consultant en syst�mes d'information
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Ao�t 2008
    Messages : 557
    Par d�faut
    Pour faire simple, j'ai �a

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    var contenuMail=vNom+" "+vPrenom+'\n\nmail : '+vMail+'\n\nCommentaire : '+vCommentaire;
    ma variable javascript contenuMail de ma page contact.php.

    Cette variable, je voudrais la r�cup�rer dans du code php, afin d'utiliser la fonction mail() de php pour envoyer le tout.

    Mais, o�, comment, pourquoi... ajax au d�but c'est assez laborieux

    C'est au niveau de la conception m�me que j'ai du mal � comprendre.

    J'ai pas trouv� d'exemple de formulaire de contact �tant dans le m�me cas que moi.

  3. #3
    R�dacteur/Mod�rateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Par d�faut
    Bonjour,
    De premiere vue, tu declare xhr comme variable globale ensuite tu le redeclares comme variable locale dans la fonction createXMLHttpRequestObject.
    return;}
    ....

  4. #4
    Membre �clair�
    Homme Profil pro
    Conseil - Consultant en syst�mes d'information
    Inscrit en
    Ao�t 2008
    Messages
    557
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 39
    Localisation : France, Bouches du Rh�ne (Provence Alpes C�te d'Azur)

    Informations professionnelles :
    Activit� : Conseil - Consultant en syst�mes d'information
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Ao�t 2008
    Messages : 557
    Par d�faut
    Oui c'est vrai, c'est que j'ai modifi� presque 450 fois le code.

    Mais sur ma page du formulaire ( contact.php) j'ai ce script :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    function soumettreMail(){
    	if(document.form.nom.value=="" || document.form.prenom.value=="" || document.form.mail.value=="" ){
    		alert("Vous n'avez pas saisi toutes les informations.");}
    	else{
    			var testMail = new RegExp('^[a-z0-9]+([_|\.|-]{1}[a-z0-9]+)*@[a-z0-9]+([_|\.|-]*{1}[a-z0-9]+)*[\.]{1}[a-z]{2,6}$', 'i'); // syntaxe de mail valide
     
    			if(!testMail(document.form.mail.value)){
    				alert("L'adresse mail saisie est invalide.");}
     
    			else{
    				var vNom=document.form.nom.value;
    				var vPrenom=document.form.prenom.value;
    				var vMail=document.form.mail.value;
     
    				if(document.form.commentaire.value!=""){
    					var vCommentaire=document.form.commentaire.value;}
     
    				var contenuMail=vNom+" "+vPrenom+'\n\nmail : '+vMail+'\n\nCommentaire : '+vCommentaire;
     
    				alert("Message de "+contenuMail);
     
     
    				}
     
    	}
    }
    Et sur ma page de confirmation o� je voudrais avoir acc�s � la fameuse variable contenuMail, j'ai �a

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    		var xhr = null; 
     
    		if(window.XMLHttpRequest) // Firefox et autres
    		   {xhr = new XMLHttpRequest(); }
    		else if(window.ActiveXObject){ // Internet Explorer 
    		   try {
                    xhr = new ActiveXObject("Msxml2.XMLHTTP");
    				}catch (e) {
                    xhr = new ActiveXObject("Microsoft.XMLHTTP");alert("oui");
    				}
    		}
     
    		else { // XMLHttpRequest non supporté par le navigateur 
    			alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest..."); 
    			xhr = false; 
    		}
     
    		xhr.open("POST","contact.php",true);
     
    ...
    Et apr�s le xhr.open, je suis perdu...

    je dois me servir de responseText? Et comment lui dire que je veux uniquement une variable?

    Mais en plus je voudrais r�cup�rer la variable pour m'en servir dans du code php ! Et �a �a me facilite pas la tache.

    Quand je fais un alert(xhr.responseText), le message de l'alert est vide.

    ps : j'�dite au fur et � mesure que je tente d'avancer

Discussions similaires

  1. Recuperer le resultat d'une variable javascript dans une variable PHP
    Par Dpsyourface dans le forum EDI, CMS, Outils, Scripts et API
    R�ponses: 2
    Dernier message: 01/03/2013, 16h59
  2. R�ponses: 3
    Dernier message: 28/09/2007, 16h58
  3. R�ponses: 1
    Dernier message: 20/04/2007, 09h12
  4. [PHP-JS] mettre une variable javascript dans une variable php
    Par Mounr dans le forum G�n�ral JavaScript
    R�ponses: 1
    Dernier message: 20/04/2007, 09h09
  5. r�cup�rer une variable javascript dans une variable java
    Par tx dans le forum G�n�ral JavaScript
    R�ponses: 1
    Dernier message: 06/07/2006, 17h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo