[RESOLU] envoi de mail si...

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] envoi de mail si...

Re: envoi de mail si...

par tycoons » 12 sept. 2014, 08:17

merci pour votre aide j'ai trouvé la solution en plus simple

Re: envoi de mail si...

par tycoons » 10 sept. 2014, 12:17

Salut à tous,
J'ai modifier le script de base mais il ne fais pas ce que je veux.
Je veux que par rapport a l'égalité de la date il envoi un mail au destinataire avec un jour plus 2 par rapport au email qui corresponde a l'égalité.
exemple :
2014-09-08 [email protected] envoi du mail
2014-09-09 [email protected] pas d'envoi
2014-09-08 [email protected] envoi du mail
$query = $db->prepare("select * FROM pret");
      $query->execute();
      
      for($i=0; $row = $query->fetch(); $i++){
      $datepret=$row['datepret'];
      	$email=$row['email'];
     	$prenom=$row['prenom'];
     //Nombre jours à ajouter

     $DateFin=2;

      	if ($datepret==$DateFin){
			$DateFin = date('Y-m-d', strtotime($datepret.' +'.$DateFin.' days'));

			$email = explode(',', $e_mail);
}
require_once('PHP/class.phpmailer.php');
require_once('PHP/class.smtp.php');
$mail = new PHPMailer();

$mail->IsSMTP();  // telling the class to use SMTP
$mail->Host     = "smtp.orange.fr"; // SMTP server
$mail->From     = "[email protected]";
$e_mail = explode(',', $email);
foreach ($e_mail as $aa) {
    $mail->AddAddress($aa);
}
//$mail->AddAddress($email);

$mail->Subject  = "Vous devez rendre votre livre";
$mail->Body     .= "Bonjour " .$prenom.", \n\n Vous devez rendre votre livre.";
$mail->WordWrap = 50;

if(!$mail->Send()) {
  echo 'Message non envoye.';
  echo 'Mailer error: ' . $mail->ErrorInfo;
} else {
  echo 'Message envoyer.';
					}

								
										}
la sa fonctionne mais sa ne filtre pas les mail par date pour l'envois sa envoi a tous le monde

Re: envoi de mail si...

par tycoons » 09 sept. 2014, 14:14

salut Nestecha,
J'ai tester de modifier l'emplacement de mes variables et de les mettre avant mon if == du coup mon script ne marche plus :?:

Re: envoi de mail si...

par Nestecha » 09 sept. 2014, 14:02

Tu appelles $DateFin et $date AVANT de les définir (juste après la ligne //Nombre jours à ajouter), donc forcément il ne comprend pas d'où sortent tes variables :)

envoi de mail si...

par tycoons » 09 sept. 2014, 12:25

Salut la team,
Je patauge sur mes envois de mail.
Je veux envoyer des mail si la date du jour et la date de fin sont égale voila ce que j'ai fait:
$query = $db->prepare("select * FROM pret");
      $query->execute();
      if ($DateFin==$date){
      for($i=0; $row = $query->fetch(); $i++){
    $row['datepret'];
		 $row['email'];
     $row['prenom'];
//Nombre jours à ajouter
$DateFin=30; //Celle-ci me donne une notice
$datepret=$row['datepret'];
$date = date("Y-m-d"); //et celle là aussi
$DateFin = date('Y-m-d', strtotime($datepret.' +'.$DateFin.' days'));
if ($DateFin==$date){
require_once('PHP/class.phpmailer.php');
require_once('PHP/class.smtp.php');
$mail = new PHPMailer();

$mail->IsSMTP();  // telling the class to use SMTP
$mail->Host     = "smtp.orange.fr"; // SMTP server

$mail->From     = "infosupport@*****.fr";
$mail->AddAddress($row['email']);

$mail->Subject  = "First PHPMailer Message";
$mail->Body     = "Hi! \n\n This is my first e-mail sent through PHPMailer.";
$mail->WordWrap = 50;

if(!$mail->Send()) {
  echo 'Message non envoye.';
  echo 'Mailer error: ' . $mail->ErrorInfo;
} else {
  echo 'Message envoyer.';
}
}
}
}
Bon après quelque modif sa fonctionne mais je n'arrive pas a enlever les notice undefine
Notice: Undefined variable: date
Notice: Undefined variable: DateFin
si vous pouviez me procurer vos conseil
merci