[php] Envoyer resultat requete plusieurs ligne par mail

Envoyer resultat requete plusieurs ligne par mail [php] - PHP - Programmation

Marsh Posté le 17-03-2011 à 16:20:40    

bonjour,
 
Je cherche a envoyer par mail, un resultat de requete qui est un tableau a plusieurs lignes.
 
Je m'y prend comme un pied car je recois un mail par ligne.
 
Pouvez vous m'aider à faire mieux ?
 

Code :
  1. <?php
  2. //recupere date du jour
  3. $date = date('Y-m-d', time() - 3600 * 24);
  4. //date ("Ymd" );
  5. //Connection Mysql
  6. mysql_connect("*","*","*" )or die("Problème avec la base de données" );
  7. mysql_select_db("*" )or die ("pas de connection" );
  8. $reponse2 = mysql_query("SELECT jom15_jstats_pages.page_title, COUNT(*)
  9. FROM jom15_jstats_impressions
  10. INNER JOIN jom15_jstats_visits ON jom15_jstats_visits.visit_id = jom15_jstats_impressions.visit_id
  11. INNER JOIN jom15_jstats_pages ON jom15_jstats_impressions.page_id = jom15_jstats_pages.page_id
  12. WHERE jom15_jstats_visits.visit_date = '$date' GROUP BY jom15_jstats_pages.page_id ORDER BY COUNT(*) DESC" ); // Requête SQL
  13. // On fait une boucle pour lister tout ce que contient la table :
  14. //***********************************************************************************************************************
  15. if ($date)
  16. {
  17. //*************************************************************************************************************************
  18. while ($donnees2 = mysql_fetch_array($reponse2))
  19. {
  20. //Envoi mail
  21. $to = 'bidule@aol.com' ;  
  22. $subject = 'Nombre de visiteurs' ;  
  23. $body = '<HTML>' ;  
  24. $body = $body . '<HEAD>' ;  
  25. $body = $body . '</HEAD>' ;  
  26. $body = $body . '<BODY>' ;  
  27. //Code pour les pages visitées
  28. $body = $body . '<p>';
  29. $body = $body . 'Les pages visitées ';
  30. $body = $body . $date;
  31. $body = $body . '</p>';
  32. $body = $body . '<div width="300">' ;  
  33. $body = $body . '<center>';
  34. $body = $body . '<table border="1" cellspacing="3" cellpadding="3">' ;  
  35. $body = $body . '<tr>' ;  
  36. $body = $body . '<td>' ;  
  37. $body = $body . $date;
  38. $body = $body . '</td>' ;  
  39. $body = $body . '<td>' ;  
  40. $body = $body . $donnees2 [0];  
  41. $body = $body . '</td>' ;  
  42. $body = $body . '<td>' ;  
  43. $body = $body . $donnees2 [1];  
  44. $body = $body . '</td>' ;  
  45. $body = $body . '<tr>' ;  
  46. $body = $body . '</table>' ;  
  47. $body = $body . '</center>';
  48. $body = $body . '</div>' ;  
  49. $body = $body . '</BODY>' ;  
  50. $body = $body . '</HTML>' ;  
  51. $headers = "MIME-Version: 1.0\r\n" . "Content-type: text/html; charset=iso-8859-1\r\n" . "From: siteInterval.coop" ;  
  52.      mail($to, $subject, $body , $headers);
  53.    
  54. }
  55. //mysql_close(); // Déconnexion de MySQL
  56. //****************************************************************************************************
  57. }
  58. else
  59. {
  60. '';
  61. }
  62. //****************************************************************************************************
  63. ?>


 
Merci d'avance pour votre aide.
Amicalement

Reply

Marsh Posté le 17-03-2011 à 16:20:40   

Reply

Marsh Posté le 17-03-2011 à 18:02:30    

Ta fonction d'envoi de mail se trouve dans ta boucle "while", sort le.
 
Et par la même occasion sort les lignes qui n'ont rien à faire dans ta boucle aussi et ne laisse que ce que dont tu as besoin : uniquement ce qu'il y a entre le <tr></tr>.


---------------
*** [Feed-Back] AzOo ***
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed