Probleme de transmission de variable

joki84 -  
ilan27 Messages postés 395 Statut Membre -
Bonjour,

J ai un soucis avec mon script. Je souhaite qu'un email me soit envoyé récapitulant les campagnes publicitaires qui ont ete supprimées.

Je recois l'email mais sans les variables...

Pourriez vous m aider svp ?

<?php 

include ('dbconnect.php');

$today=time(); //timestamp unix du jour
$today_plus_dix=$today-(3600*24*1); // auquel on rajoute le nombre de secondes correspondant a 10 jours
$date_peromption=date('Y-m-d',$today_plus_dix); // mise au format MySql

$from_email = "system@voilou.fr";
$entetemail = "From: $from_email \n"; // Adresse expéditeur
$entetemail .= "X-Mailer: PHP/" . phpversion() . "\n" ;
$msg = "Bonjour, \n";
$msg .= "\n";
$msg .= "Les campagnes suivantes ont été supprimées de la base :\n";
$msg .= "\n";
$msg .= "$liste";
$msg .= "\n";
$msg .= "Bonne Journée !\n";

$sql=mysql_query("SELECT * FROM campagne WHERE datefincampagne < '".$date_peromption."'") or die('Impossible de selectioner les données dans la base'.mysql_error());
//il faut sortir les donnees de la zone memoire par une boucle while
$liste=""; 
while($ligne=mysql_fetch_array($sql)){
 $liste.=$ligne['nomcampagne']." de la regie ".$ligne['regiecampagne']."\n"; // on construit la liste
mail('support@voilou.fr','Des campagnes ont été supprimées',$msg,$entetemail); 
}

$sql2=mysql_query("DELETE FROM campagne WHERE datefincampagne < '".$date_peromption."'") or die('Impossible de supprimer les données dans la base'.mysql_error());

// on ferme la connexion à mysql
mysql_close(); 

?>

7 réponses

pitxu Messages postés 708 Statut Membre 95
 
c'est normal tu définis ta variable $msg avec la variable $liste avant d'effectuer ta requete SQL, donc $liste =""

<?php

include ('dbconnect.php');

$today=time(); //timestamp unix du jour
$today_plus_dix=$today-(3600*24*1); // auquel on rajoute le nombre de secondes correspondant a 10 jours
$date_peromption=date('Y-m-d',$today_plus_dix); // mise au format MySql

$sql=mysql_query("SELECT * FROM campagne WHERE datefincampagne < '".$date_peromption."'") or die('Impossible de selectioner les données dans la base'.mysql_error());
//il faut sortir les donnees de la zone memoire par une boucle while
$liste="";
while($ligne=mysql_fetch_array($sql)){
$liste.=$ligne['nomcampagne']." de la regie ".$ligne['regiecampagne']."\n"; // on construit la liste
mail('support@voilou.fr','Des campagnes ont été supprimées',$msg,$entetemail);
}

$from_email = "system@voilou.fr";
$entetemail = "From: $from_email \n"; // Adresse expéditeur
$entetemail .= "X-Mailer: PHP/" . phpversion() . "\n" ;
$msg = "Bonjour, \n";
$msg .= "\n";
$msg .= "Les campagnes suivantes ont été supprimées de la base :\n";
$msg .= "\n";
$msg .= "$liste";
$msg .= "\n";
$msg .= "Bonne Journée !\n";

$sql2=mysql_query("DELETE FROM campagne WHERE datefincampagne < '".$date_peromption."'") or die('Impossible de supprimer les données dans la base'.mysql_error());

// on ferme la connexion à mysql
mysql_close();

?>
0
joki84
 
Bonjour,

J avais essaye comme ca mais du coup cela m'envoie un email completement vierge...c est pour cela que j'avais placer les donées comme dans mon precedent message..si vous avez une autre solution elle serait la bienvenue ! :-)

MErci
0
pitxu Messages postés 708 Statut Membre 95
 
ajoute un

echo $list;

juste avant

$from_email = "system@voilou.fr";

histoire de voir si $list contient quelque chose

(et le code que j'ai posté est la bonne méthode, reste sur cette base là)
0
joki84
 
Bonjour,

Cela ne me retourne rien du tout mais les données concernées sont bien effacées... :-( Je comprends plus rien
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ilan27 Messages postés 395 Statut Membre 36
 
Bonsoir,
Je pense que c'est parce que tu écris tes variables entre guillemets, donc elles ne sont peut etre pas interprétées en tant que telles.
0
joki84
 
Bonsoir

Tu parles de quelles variables ilan27?

Si c'est le '".$date_peromption."' , je ne pense pas que cela vienne de la car il supprime bien les données anterieures a la date en question transmise par la variable...il m'envoi bien le mail...selement que le contenu du mail est vierge....
0
ilan27 Messages postés 395 Statut Membre 36
 
Bonsoir, je parlais de $liste...!
0