Aide - Recherche - Membres - Calendrier
Version complète : Envoi d'un email avec les données de la session !!
Forum Développeur - Administration serveur, programmation et base de données > Programmation > PHP
gerfo
Bonjour TLM !

Je cherche un tuto qui pourrais m'aider à envoyer le contenu de ma session à une adresse de email.

Exemple, lorsque que ma commande est finie, les infos sont expédiée par email.
Actuellement je les stock dans une table.

Si y a un post du genre, je l'ai pas encore trouvé.

Merci encore.

ps : j'ai trouvé un code php et un tuto pour envoyer un mail en PHP.
gerfo
Salut TLM !

J'ai créé une fonction pour envoyé automatiquement un email (avec le tuto d'envoi de mail PHP) avec les infos de session, mais a l'arrivée tout est vide dans le mail ?!

Visiblement je comprend pas la syntaxe pour récupérer le contenu d'une session.
- HTTP_POST_VARS['nom']; --> HTTP_SESSION['nom']; ???

Ca, c'est ma fonction.

Si quelqu'un peut me dire comment récupérer des infos dans un array de session, je serais heureux.... :cry:

Ma function PHP
CODE
function envoi_mail_confirme() {



global $SESSION;



$nom= $_SESSION["nom_utilisateur"];

$mail= $_SESSION["email"];

$objet= $_SESSION['nom_famille'];

$message= $_SESSION['caddie'];



/////voici la version Mine

$headers = "MIME-Version: 1.0\r\n";

//////ici on détermine le mail en format text

$headers .= "Content-type: text/plain; charset=iso-8859-1\r\n";

////ici on détermine l'expediteur et l'adresse de réponse

$headers .= "From: $nom <$mail>\r\nReply-to : $nom <$mail>\nX-Mailer:PHP";



$subject="$objet";

$destinataire="moi@mondomaine.com";

$body="$message";

if (mail($destinataire,$subject,$body,$headers)) {

 echo "Votre demande a passé...";

 }

 else {

 echo "Une erreur s'est produite";

 }

}

Et ici... Le contenu de session]
CODE


Array

(

   [SESSION] => Array

       (

           [caddie] => caddie Object

               (

                   [articles] => Array

                       (

                       )



                   [total] => 0

               )



           [ip] => 45.120.56.213

           [utilisateur] => Array

               (

                   [0] => pierre

                   [nom_utilisateur] => pierre

                   [1] => dubuto

                   [prenom] => pierre

                   [2] => dubuto

                   [nom_famille] => dubuto

                   [3] =>p.dubuto@dubuto.com

                   [email] => p.dubuto@dubuto.com

                   [4] => 7

                   [id_utilisateur] => 7

               )



       )



)
jep
QUOTE

Si quelqu'un peut me dire comment récupérer des infos dans un array de session, je serais heureux....  :cry:  

Ma function PHP
CODE
function envoi_mail_confirme() {



global $SESSION;



$nom= $_SESSION["nom_utilisateur"];

$mail= $_SESSION["email"];

$objet= $_SESSION['nom_famille'];

$message= $_SESSION['caddie'];



/////voici la version Mine

$headers = "MIME-Version: 1.0\r\n";

//////ici on détermine le mail en format text

$headers .= "Content-type: text/plain; charset=iso-8859-1\r\n";

////ici on détermine l'expediteur et l'adresse de réponse

$headers .= "From: $nom <$mail>\r\nReply-to : $nom <$mail>\nX-Mailer:PHP";



$subject="$objet";

$destinataire="moi@mondomaine.com";

$body="$message";

if (mail($destinataire,$subject,$body,$headers)) {

 echo "Votre demande a passé...";

 }

 else {

 echo "Une erreur s'est produite";

 }

}



1 - Cette ligne est totalement inutile :
CODE
global $SESSION;

> http://www.php.net/manual/fr/language.vari...ables.scope.php

2 - Tu peut récupérer les information de ton tablau $_SESSION['caddie'] comme n'importe qu'elle autre tableau, par exemple :

CODE
$message= "Contenu  de votre cadie :\n\n";



foreach($_SESSION['caddie'] as $k => $v){

 if($k != "total")  $message .= $v."\n";

}



$message .= "\nTotal : ".$_SESSION['caddie']['total'];


:wink:
gerfo
OK, merci bien !

Je crois que je comprend la logique.
L'appliquer c'est autre chose, pour l'instant c'est pas au point... :?

Merci encore pour le lien,

A+
gerfo
Salut TLM !

jep, j'ai fais des tests, j'ai cherché pas mal de code pour essayé de comprendre, mais rien à faire.

Impossible de récupérer quelque chose.

J'ai essayé plus simpement de récupérer l'adresse de l'expéditeur, mais rien ne s'affiche dans le mail !!! :cry:

Je ne sais plus quoi faire !
CODE


$mail= $_SESSION["email"];

$mail= $SESSION["email"];

$mail= $_SESSION['email'];

$mail= $SESSION['email'];

$mail= $_SESSION['utilisateur']['email'];



Si quelqu'un passe par là et peu m'aider a me dire ce que je fais faux :cogne:

please help...

Merci à tous
Antoine
CODE
$mail= $_SESSION['utilisateur']['email'];


as-tu bien fait un session_start au tout début de ta page ?
gerfo
Oui, j'ai mis le session start,

Et ma fonction de mail fais partie d'un fichier de config.inc, tout est bon et l'envoi de mail aussi...
sauf que tout est vide dans le mail.

J'ai vraiment l'impression que c'est un problème de syntaxe, mais j'ai presque tout essayé....

Avec le code suivant, le contenu de la session s'affiche correctement :
CODE
echo("<pre>");

print_r($_SESSION);

echo("</pre>")


Je comprend plus rien....
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'informations, la mise en page et les images, veuillez cliquer ici.
Invision Power Board © 2001-2009 Invision Power Services, Inc.