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 actif
    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 : 37
    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
    Points : 286
    Points
    286
    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 actif
    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 : 37
    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
    Points : 286
    Points
    286
    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
    Points : 15 059
    Points
    15 059
    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 actif
    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 : 37
    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
    Points : 286
    Points
    286
    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