afficher enregistrements d'une table dans le corps du mail - PHP - Programmation
Marsh Posté le 27-09-2005 à 16:49:02
Ben ouais ... Là, j'ai l'impression qu'il te manque de graves notions d'algoritmique et de PHP
Marsh Posté le 27-09-2005 à 16:49:59
EDIT:
Ah oui quand meme
Marsh Posté le 27-09-2005 à 16:52:14
C'est normal que tu n'aies que le dernier là.
A chaque fois que tu boucles (dans ton while), tu assignes l'enregistrement en cours à tes variables, mais tu ne concatenes pas... Donc tu as le dernier enregistrement...
commences peut-être par faire un
Code :
|
Je sais pas si c'est exactement ça que tu veux faire mais bon, ça doit pas être loin...
Marsh Posté le 27-09-2005 à 17:48:48
en fait $m1 .= "$Ref_produit<br>$prix_produit<br>$quantite_produit<br>";
n'est pas bon non plus.
Je m'explique :
au début, je voulais juste récupérer les enregistrements de ma table:
$query="SELECT * FROM detail_commande WHERE N_commande='$N_commande'";
$result = mysql_query($query);
while ($val = mysql_fetch_array($result))
{
echo $val["Ref_produit"]."<br>";
$prix_produit= $val["prix_produit"]."<br>";
$quantite_produit= $val["quantite_produit"]."<br>"; }
j'ai effectivement tous les enregistrements qui s'affichent correctement.
2 eme étape et c'est là qu'est mon pb
je voudrais récupérer ces enregistrements dans une variable que j'intègrerais dans la fonction mail.
Voila
Merci pour l'aide
Marsh Posté le 27-09-2005 à 18:25:04
j'ai trouvé sur ce site !
http://forum.hardware.fr/hardwaref [...] m#t1125978
$strOut = '<table>'.chr(13);
$req = "SELECT * FROM detail_commande WHERE N_commande='$N_commande'";
$rs = mysql_query($req);
while($val = mysql_fetch_array($rs)){
$strOut.= ' <tr>'.chr(13);
$strOut.= ' <td>'.$val['Ref_produit'].'</td>'.chr(13);
$strOut.= ' <td>'.$val['quantite_produit'].'</td>'.chr(13);
$strOut.= ' <td>'.$val['prix_produit'].'</td>'.chr(13);
$strOut.= ' </tr>'.chr(13);
}
$strOut.='</table>';
echo $strOut;
Mail("$mail_client","test","$strOut","from: lala" );
Par contre dans le corps du mail, je reçois ça :
<table> <tr> <td>Série 1</td> <td>2</td> <td>12 </td> </tr>
<tr> <td>Bonbons</td> <td>1</td> <td>5 </td> </tr></table>
quelqu'un sait ?
Merci !
P.S. : au fait FlorentG et betsamee, vous prenez le temps de me dire que je débute. Merci pour l'info, j'avais pas remarqué !
Par contre vous ne donnez aucune info ; c'est quoi alors l'interêt ? Lire un post et se moquer ?
Marsh Posté le 27-09-2005 à 18:36:32
Mlk12 a écrit : P.S. : au fait FlorentG et betsamee, vous prenez le temps de me dire que je débute. Merci pour l'info, j'avais pas remarqué ! |
Avant d'essayer de courrir, apprends à marcher. Avant d'essayer de marcher, apprends à te tenir debout.
Proverbe d'un nihiliste hors pair.
EDIT : Autrement dit, l'info, c'est pas du bricolage à la petite semaine.
Marsh Posté le 27-09-2005 à 18:53:44
ça va la concierge ? comme tu n'as apparemment pas compris alors je vais t'expliquer une petite chose monsieur le philosophe de comptoir.
j'apprends justement à marcher mais y a des rigolos qui n'ont rien d'autre à foutre que de poster leurs pensées alors que je cherche une info.
Mais c'est peût être un trop simple pour toi tout ça..
Marsh Posté le 27-09-2005 à 19:02:05
Mlk12 a écrit : ça va la concierge ? comme tu n'as apparemment pas compris alors je vais t'expliquer une petite chose monsieur le philosophe de comptoir. |
Ce que veut te dire le monsieur c'est qu'il existe de la doc sur internet, et dans ton cas elle doit être simple à trouver... Donc yavais pas besoin de venir créer un topic pour trouver ta réponse!
Ensuite ce que tu viens demander fait parti des bases... Donc pas le genre de choses que tu viens demander sur un forum normalement!
Marsh Posté le 27-09-2005 à 19:02:07
Mlk12 a écrit : ça va la concierge ? comme tu n'as apparemment pas compris alors je vais t'expliquer une petite chose monsieur le philosophe de comptoir. |
si tu cherchais rellement cette info tu posterais pas des inepties pareilles
Marsh Posté le 27-09-2005 à 19:04:20
Mlk12 a écrit : ça va la concierge ? comme tu n'as apparemment pas compris alors je vais t'expliquer une petite chose monsieur le philosophe de comptoir. |
Pourquoi tant de haine ?
Mlk12 a écrit : j'apprends justement à marcher mais y a des rigolos qui n'ont rien d'autre à foutre que de poster leurs pensées alors que je cherche une info. |
Justement, tu te plantes : essaye d'abord de faire une boucle simple. Ensuite, combine une boucle avec un fetch. Ensuite, fais qq chose de plus élaboré.
Mlk12 a écrit : Mais c'est peût être un trop simple pour toi tout ça.. |
Ne fais pas le frustré, veux-tu.
Marsh Posté le 27-09-2005 à 19:07:50
Je voudrais quand même ajouter que la réponse se trouvait juste là:
http://www.php.net/manual/fr/langu [...] gnment.php
Opérateur d'assignation.... Si tu sais ce qu'est une variable alors tu aurais dû trouver, maintenant si tu sais pas ce que c'est...
Marsh Posté le 28-09-2005 à 09:52:04
salut !
j'ai trouvé comment faire grâce à votre aide précieuse ! voici le code pour ceux que ça intéresse.
<?
$strOut = '<table>'.chr(13);
$req = "SELECT * FROM detail_commande WHERE N_commande='$N_commande'";
$rs = mysql_query($req);
while($val = mysql_fetch_array($rs)){
$strOut.= ' <tr>'.chr(13);
$strOut.= ' <td>'.$val['Ref_produit'].'</td>'.chr(13);
$strOut.= ' <td>'.$val['quantite_produit'].'</td>'.chr(13);
$strOut.= ' <td>'.$val['prix_produit'].'</td>'.chr(13);
$strOut.= ' </tr>'.chr(13);
}
$strOut.='</table>';
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= 'From: lala' . "\r\n";
echo $strOut;
Mail("$mail_client","test","$strOut","$headers" ); ?>
a + les amis !!
Marsh Posté le 28-09-2005 à 09:54:02
Reply
Marsh Posté le 27-09-2005 à 16:47:24
Bonjour,
je voudrais récupérer les champs de ma table detail_commande et les envoyer par mail avec la fonction $mail.
J'arrive à les récupérer mais pas à les envoyer
J'ai essayé ça mais ca n'affiche que le dernier enregistrement.
query="SELECT * FROM detail_commande WHERE N_commande='$N_commande'";
$result = mysql_query($query);
while ($val = mysql_fetch_array($result))
{
$Ref_produit=$val["Ref_produit"] ;
$prix_produit= $val["prix_produit"];
$quantite_produit= $val["quantite_produit"];
$m1="$Ref_produit<br>$prix_produit<br>$quantite_produit<br>";
echo $m1 ; }
Mail("$mail_client","test","$m1","from: lala" ); //n'affiche que le dernier enregistrement.
Comment afficher tous les enregistrements de ma table dans le corps du mail ?
Merci pour votre aide.
Mlk