Page 1 sur 1

Envoyer mail via flash/php

Posté : 20 mars 2008, 20:23
par Gd-stef
Bonjour

En plein apprentissage de php et actionscript2 , je m'essaye a créer un formulaire qui me permettrais d'obtenir les infos via e-mail.
En fait j'ai bien besoin de quelques conseils éclairés.

Mon code php
PHP:
    <?    

    //------------ récup des infos contenues dans l'adresse ----------
    $nom = $HTTP_GET_VARS['nom'];
    $prenom = $HTTP_GET_VARS['prenom'];
    $bebe = $HTTP_GET_VARS['bebe'];


    //---------- création du corps du message -----------
    $corps_du_mail  = "Nom : $nom \n";
    $corps_du_mail .= "Prénom : $prenom \n";
    $corps_du_mail .= "Nombre de bébés : $bebe \n";


    //---------- expédition mail  -----------
    $destinataire = "[email protected]";
    $result = mail_perso ($destinataire, "CONTACT XXXXXXXX",
    $corps_du_mail);
    if (  ! $result) {
       print "Y'a un pb dans l'expédition du mail, ça a foiré !";
    }
    else {
       print "youpppiiiii, ça a marché. Allons voir dans la boite à mail. !";
    }

    //------- définition de la fonction mail_perso  -------------
    function mail_perso($destinataire, $objet , $message) {
        $from    = '[email protected]';
        $header  = "Date: ".date("D, d M Y H:i:s")."\n";
        $header .= "From:$from\n";
        $header .= "Reply-to: $from\n";
        $result =  mail($destinataire,$objet,$message,
    $header);
        if ( ! $result) {die("erreur sur expédition de mail");}
        else {return $result;}
    }


    ?>

celui du bouton flash

ActionScript:

Code : Tout sélectionner

envoyez_bt.onPress = function() { adresse = "/xxxxxx/envoyermail.php?nom="+vNom+"&prenom="+vPrenom+"&bebe="+vBebe; loadVariablesNum(adresse, 0); };



et voici ce que je reçois dans ma boite mail
Citation:Nom : _level0.vNom
Prénom : _level0.vPrenom
Nombre de bébés : _level0.vBebe

Je pense que je me plante dans la rédaction du code sur le bouton flash.

En gros je me mélange pas mal les pinceaux , merci de votre aide.

Posté : 20 mars 2008, 21:08
par Hywan
Je ne saurais pas répondre, mais va jeter un œil du côté de l'encodage PHP et Flash (moteur de recherche).

Et une chose, laisse tomber $HTTP_GET_VARS ! Utilise $_GET !
$nom = $_GET['nom'];
$prenom = $_GET['prenom'];
$bebe = $_GET['bebe'];
Pour des raisons de sécurité principalement.

Posté : 21 mars 2008, 08:43
par Calimero
En complément du problème d'encodage de mail repéré par HyWaN, tu as visiblement un problème dans tes variables : le nom de tes variables flash se retrouve dans le mail (au lieu de leur valeur). Cela peut signifier que le nom de tes variables est incorrect ou que ta façon d'y accéder n'est pas la bonne. (Apparemment tu te situes dans le contexte d'une fonction flash, c'est important si tu veux accéder à des variables extérieures à la fonction, comme ici).

Sinon, deux fonctions te seront particulièrement utiles : en php, la fonction print_r() et en AS la fonction trace(). N'hésite pas à les utiliser pour visualiser l'état d'une variable à un instant T, cela te permettra d'isoler à quel endroit ton code ne se comporte pas comme tu le veux.

Posté : 21 mars 2008, 15:58
par Gd-stef
merci de vos réponse je vais regarder tout ça.

Posté : 25 mars 2008, 16:57
par Gd-stef
en effet une erreur de syntaxe, j'ai oublié les propriétés .text à mes variables As

Code : Tout sélectionner

envoyez_bt.onPress = function() { adresse = "/xxxxxx/envoyermail.php?nom="+vNom.text+"&prenom="+vPrenom.text+"&bebe="+vBebe.text; loadVariablesNum(adresse, 0); trace(adresse); };
Il me serais d'ailleurs plus utile d'utiliser un Loadvars, mais ceci est une autre histoire.

Merci des conseils.

Posté : 25 mars 2008, 17:41
par zeus
Modération :
Puisque ta question est résolue, j'ajoute le tag [Résolu]
pour indiquer aux personnes qui voudront consulter ce sujet qu'il contient une solution.

Tu peux réaliser cette opération toi-même
en cliquant sur le bouton Image qui s'affiche en haut à gauche de ce sujet
si tu as posté le 1er message en tant que membre (inscrit et identifié).

Alors... inscris-toi !!! ;)