Envoyer le panier virtuel par mail

Eléphanteau du PHP | 20 Messages

28 oct. 2007, 19:30

Voila j'ai créé un panier virtuel (avec votre aide bien évidemment), tout fonctionne
correctement. Il me reste quelques petits détails à fignoler dont l'envoi de la commande.
$msg = "Nom:\t$nom\n";
$msg .= "E-Mail:\t$email\n";
$msg .= "Societe:\t$societe\n";
$msg .= "Adresse:\t$adresse\n";
$msg .= "Message:\t$message\n\n";
$commande = "Commande:\t".$_SESSION['panier']."\n\n";
$recipient = "[email protected]";
$subject = "Formulaire de commande";
$mailheaders = "From: ".$nom." \n";
$mailheaders .= "Reply-To: ".$email."\n\n";
mail($recipient, $subject, $msg, $commande, $mailheaders);
Je recois donc un email du style :
Nom: moi
E-Mail: [email protected]
Societe: toi
Adresse: la
Message: bas

sans la commande
Donc mon prob est là, je ne sais pas comment je dois faire pour envoyer le contenu du panier..
pas pratique comme panier.
J'ai pensé faire un fichier texte de ce panier mais je n'ai pas réussi..

Pouvez-vous m'aider SVP.
Pak

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

28 oct. 2007, 19:36

Enfaite le truc est que si tu veux un café sucré et que tu jettes tout à coté il ne va jamais avoir ce petit gout sucré tant attendu :wink:

Tu ne fais pas apparaitre le contenu du panier dans le corps du message mais en lieu et place des en-têtes (ordre des paramètres pour mail() )

De plus l'affichage se fera de la forme :
Commande: Array
il faut boucler joliment sur ce tableau.

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Eléphanteau du PHP | 20 Messages

30 oct. 2007, 12:45

J'ai fait des recherches avec notre pote google mais j'ai pas trouvé d'exemple
pour envoyer le contenu d'un panier par mail. J'ai trouvé pour des headers mais
je n'y arrive pas. Sûrement je fais pas bien.
    $headers ="From:\t$nom\n"; 
    $headers .="Reply-To:\t$email\n"; 
    $headers .='Content-Type: text/html; charset="iso-8859-1"'."\n"; 
    $headers .='Content-Transfer-Encoding: 8bit'; 
    $headers .=envoi_commande();
	$msg = "Nom:\t$nom\n";
	$msg .= "E-Mail:\t$email\n";
	$msg .= "Societe:\t$societe\n";
	$msg .= "Adresse:\t$adresse\n";
	$msg .= "Message:\t<table width=640>".$tableau."</table>\n\n";
	$recipient = "[email protected]";

     $message ="<html><head><title>Commande</title></head><body>".$msg."Merci de votre confiance</body></html>"; 

     if(mail($recipient, $subject, $message, $headers)) { 
          echo 'Le message a été envoyé'; 
     } 
     else { 
          echo 'Le message n\'a pu être envoyé'; 
     } 
Si quelqu'un pouvait me donner un exemple d'envoi de panier, je prends, merci
Pak

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

30 oct. 2007, 12:47

J'ai l'impression que tu te compliques la vie pour rien.
Il s'agit juste de boucler sur un tableau (3 lignes de code) pas besoin de chercher un script avec google.
Genre :
foreach ($_SESSION['panier'] as $key => $valeur)

A quoi correspond envoi_commande() ?

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Eléphanteau du PHP | 20 Messages

30 oct. 2007, 12:55

Le résultat du panier sous forme de tableau que j'affiche
pour que l'utilisteur est un récupitulatif de sa commande
et du prix total.

Je voudrais ajouter ce tableau au mail.

Donc la page formulaire.php, il complète (nom, adresse mail, société, adresse postale, etc)
et voit sa commande.

Je teste merci
Pak