1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109
| <?php
/**************************************************
ENVOI DU MAIL
***************************************************/
require_once('../../Connections/CE_Conn.php');
mysql_select_db($database_CE_Conn, $CE_Conn);
// J'inlcus ma class
// Fonction
function ValideMail($email) {
$mail_valide = ereg("([A-Za-z0-9]|-|_|\.)*@([A-Za-z0-9]|-|_|\.)*\.([A-Za-z0-9]|-|_|\.)*",$email);
if ($mail_valide) return TRUE;
else return FALSE;
}
//récupération de tous les inscrits à la news-letter
$table="inscriptionnewsletter";
$cptOK=isset($_GET['cptOK'])?$_GET['cptOK']:0;
$tabKO=isset($_GET['tabKO'])?$_GET['tabKO']:array();
$limit=isset($_GET['limit'])?($_GET['limit']+200):0;
// Recuperation des destinataires :
$perSexe=isset($_POST['perSexe'])?$_POST['perSexe']:"";
$perEtat=isset($_POST['perEtat'])?$_POST['perEtat']:"";
$perEnfant=isset($_POST['perEnfant'])?$_POST['perEnfant']:"";
// Je construit ma requete selon les destinataires choisis:
$sql="SELECT DISTINCT(insMel),insCodePerso FROM $table, personnel WHERE persCodePerso=insCodePerso";
if($perSexe[1]!=1) $sql.=" AND perSexe<>1 ";
if($perSexe[2]!=1) $sql.=" AND perSexe<>2 ";
if($perEtat[1]!=1) $sql.=" AND perEtat<>'A' ";
if($perEtat[0]!=1) $sql.=" AND perEtat<>'R' ";
if($perEnfant[1]!=1) $sql.=" AND perEnfant<>'-1' ";
if($perEnfant[0]!=1) $sql.=" AND perEnfant<>0 ";
$sql.=" ORDER BY insCodePerso ";
$sql=isset($_GET['sql'])?stripslashes(urldecode($_GET['sql'])):$sql;
$sqlLim =$sql."LIMIT $limit, 200";
//
/**************************************************
ENREGISTREMENT EN BASE DU MAIL
***************************************************/
$requete="insert into nl values (now(),'".$tabRetour['fichier']."','".$_POST['sujet']."','".$_POST['corpsMail']."')";
//$mel_row=mysql_query($requete, $CE_Conn) or $message="Impossible d'enregistrer ce mail.";
$res=mysql_query($sqlLim, $CE_Conn) or die(mysql_error());
$num=mysql_num_rows($res);
// LOG POUR DEBUG
$fic=fopen('fic.txt','w+') or die ("PB de droits sur ".$_SERVER['PHP_SELF']);;
fwrite($fic,"=- $sqlLim -NUM : $num -- > $cptOK envoyés\n");
fclose($fic);
// Mail html
if(isset($_POST['corpsMail'])) {
$tstp=time();
$fichier="nl.html";
$fic=fopen($fichier,'w+') or die ("Debug: PB de droits sur ".$_SERVER['PHP_SELF']);
$corpsMail=stripslashes($_POST['corpsMail']);
fwrite($fic,$_POST['corpsMail']);
fclose($fic);
}
$mesKO="";
$dateJour=date('Y-m-d H:i:s');
while($row = mysql_fetch_assoc($res)){
if(ereg( "^[^@ ]+@([a-zA-Z0-9\-]+\.)+([a-zA-Z0-9\-]{2}|net|com|gov|mil|org|edu|int)\$",$row['insMel'])){
$cptOK++;
$To = $row['insMel'];
$From = "xxxxxxxxxxxxxx";
$Reply = "info@xxxxxxx.xx";
$Sujet = $_POST['sujet'];
$Entete="Content-type:text/html\nFrom:".$From."\r\nReply-To:".$Reply;
//mail($To, $Sujet, stripslashes($_POST['corpsMail']), $Entete);
$sqlUP="UPDATE $table SET insDernierEnvoi='$dateJour' WHERE insCodePerso='".$row['insCodePerso']."'";
$resUP=mysql_query($sqlUP);
}
else $tabKO[$row['insCodePerso']]=$row['insMel'];
}
// Les emails à pb
/*
if(is_array($tabKO)){
foreach($tabKO as $key => $value){
$mesKO.="<br/><li>$key ==> $value</li>";
}
}*/
if ($message == "") $message = "\nLa news-letter a été envoyée à $cptOK personnes inscrites! <br> $mesKO ";
if($num == 200 ) {
sleep(5);
header('location: envoiNL_exec.php?limit='.$limit.'&cptOK='.$cptOK.'&tabKO='.$tabKO.'&sql='.urlencode($sql));
exit();
}
header('Location: ../index.php?url=envoiNL/envoiNL.php&message='.urlencode($message));
exit();
?> |
Partager