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
| <?php
/*Nom du Fichier: temporaire1.php
il envoie une liste d'emails recue par un formulaire dans une variable $POST(email_bcc) nettoyés et en tableau dans un fichier texte temporaire.txt
ce fichier txt sera traité par temporaire2.php et envoyé par paquet de 50 par exemple
Les emails non valides sont enregistrés dans le fichier txt temporaire_invalide.txt
http://www.developpez.net/forums/d1194361/php/php-sgbd/php-mysql/gestion-fichier-txt/#post6555479
*/
//*********************Connexion à la base de données****************************
include('../_admin/_connect.php');
//************************simulation reception des emails par $_Post********************************
$_POST['email_bcc'] = 'a@laposte.net,b@laposte.net,c@laposte, d@laposte.net ,e@laposte.net,,f@laposte.net, g@laposte.net ,h.laposte.net,i@laposte.net ,
j@laposte.net,k@laposte.net,l@laposte.net,m@laposte.net,n@laposte.net,o@laposte.net,p@laposte.net,q@laposte.net,r@laposte.net,s@laposte.net,t@laposte.net,u@laposte.net, v@laposte.net,w@laposte.net,x@laposte.net,y@laposte.net,z@laposte.net';
//********************************Creation Fichier Temporaire**************************************
if (isset($_POST['email_bcc']))
{
$tab_mail = explode(",",$_POST['email_bcc']); // création d'un tableau à partir d'une chaine de caractères en prenant le caractère "," comme délimiteur
$tab_mail_non_valide = array(); //déclaration d'un tableau vide pour enregistrer les résultas
$tab_mail_valide = array(); //déclaration d'un tableau vide pour enregistrer les résultas
foreach ($tab_mail as $value) // on liste le tableau construit précédemment
{
$mail = trim($value); // supprime les caractères invisibles non utiles
if($mail != '') // si la valeur résultante est différente d'une chaine vide
{
if(filter_var($mail, FILTER_VALIDATE_EMAIL)) // retourne "vrai" (true) si syntaxe mail valide, sinon "faux" (false)
{
$tab_mail_valide[] = $mail; // enregistre les mails valides dans le tableau $tab_mail_valide
}
else
{
$tab_mail_non_valide[] = $mail; // enregistre les mails non valides dans le tableau $tab_mail_non_valide
}
}
}
file_put_contents('temporaire.txt',serialize($tab_mail_valide)); // enregistre le tableau sérialisé dans le fichier texte 'temporaire.txt'
// (car on ne peut pas enregistrer un tableau dans un fichier texte sans le sérialiser)
if (count($tab_mail_non_valide) > 0)
{
// liste les mails non valides en les séparant par une virgule et un espace
//Ouvre,Ecrit,ferme le fichier TXT en tableau la chaine $tab_mail
file_put_contents('temporaire_invalide.txt',serialize($tab_mail_non_valide));
echo 'mail invalide : '.implode(", ",$tab_mail_non_valide);
//print_r($tab_mail_non_valide);
}
}
// lancement de la page temporaire2.php qui va envoyer les emails par paquet de 50 par exemple
echo'<meta http-equiv="Refresh" content="10;URL=http://cg-aisne.org/temporaire2.php">';
?> |
Partager