begin process at 2010 03 19 12:57:44
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

E-Mail / Messagerie

 > ENVOIE EMAIL-NEWSLETTRE AUTOMATIQUEMENT

ENVOIE EMAIL-NEWSLETTRE AUTOMATIQUEMENT


 Description

Bonjour,
Après des recherches dans les forums et dans les codes qui existe déjà, j'ai pas trouvé
un code ou un tuto qui explique comment envoyé les NewsLettre Automatiquement
(je dis bien Automatiquement ) donc sans que l'admin execute le script d'envoi de NewsLettre,
( on execute un script php automatiquement).
Le probleme qui se pose pour l'envoie automatique est le suivant :
On fait une tâche automatique ça depandant du systèmes d'exploitation

=================================C ron sur un serveur UNIX :=========================
**************Avantages :
Très souple pour le paramètrage de la fréquence
Très répandu
Les administrateurs seront en terrain connu
*************Inconvénients :
Souvent désactivé chez les hébergeurs de base

================================At sur un serveur windows : Bienvenue au paradis de Microsoft ============
*********************Avantages :
Les administrateurs seront en terrain connu
Présent sur tous les serveurs windows
********************Inconvénients :
Souvent désactivé chez les hébergeurs de base
Risque de disparaître à moyen terme (voir 3.5)
Moins souple que cron
Les paramètres à passer dépendent du pays de votre serveur !


Donc en utilisant http://www.webcron.org/ on est indépendant du OS du serveur.
Voilà le code en bas ,

Source

  • Supposons qu'on a cette table :
  • MySQL
  • CREATE TABLE 'membres' (
  • id int(11) NOT NULL auto_increment,
  • `email` varchar(255) NOT NULL default '',
  • );
  • */
  • PHP
  • Page MailNews.php
  • <?php
  • /* Le temps d'exécution par défaut d'un script est de 30 secondes maximum */
  • /* Nous nous allons mettre '0' pour qu'on aura la possibilité d'envoyé
  • une grande quantité d'emails */
  • set_time_limit(0);
  • /* Requette pour extraire Les emails qui n'ont pas reçu la newsletter */
  • $req = mysql_query("select email from newsletter ");
  • while($array = mysql_fetch_array($req))
  • {
  • $em = $array["email"];
  • /* L'envoie de l'email */
  • @mail("$em","sujet","messsage","From: admin@domaine.net");
  • }
  • ?>
  • Alors ça on pour l'envoies des emails, et pour faire l'envoie automatique :
  • aller s'inscrire dans : http://www.webcron.org/
  • Après l'inscription, vous êtes identifiés .
  • Dans le menu en haut Selectionnez " Mes tâches ", puis " Nouvelle tâche ",
  • vous trouverez ensuite, un formulaire,
  • UrlUrl : Tapez l'URL de la page que vous voulez executer. "http://www.tonsite.com/News/MailNews.php"
  • et puis choisisez le moment d'execution ( chaque semaine, chaque mois ....)
Supposons qu'on a cette table :
MySQL

CREATE TABLE 'membres' ( 
   id int(11) NOT NULL auto_increment,
  `email` varchar(255) NOT NULL default '', 
   );

*/

PHP

Page MailNews.php
<?php


/* Le temps d'exécution par défaut d'un script est de 30 secondes maximum */
/* Nous nous allons mettre  '0' pour qu'on aura la possibilité d'envoyé
une grande quantité d'emails  */
set_time_limit(0);

/* Requette pour extraire Les emails qui n'ont pas reçu la newsletter */
$req = mysql_query("select email from newsletter ");

while($array = mysql_fetch_array($req))
{
$em = $array["email"];

/* L'envoie de  l'email */
@mail("$em","sujet","messsage","From: admin@domaine.net");

}

?>

Alors ça on pour l'envoies des emails, et pour faire l'envoie automatique :
aller s'inscrire dans : http://www.webcron.org/
Après l'inscription, vous êtes identifiés .
Dans le menu en haut Selectionnez " Mes tâches ", puis " Nouvelle tâche ",
vous trouverez ensuite, un formulaire,
UrlUrl  : Tapez l'URL de la page que vous voulez executer. "http://www.tonsite.com/News/MailNews.php"
             et puis choisisez le moment d'execution ( chaque semaine, chaque mois ....)



 Sources du même auteur

Source avec Zip LISTES DÉROULANTES DYNAMIQUES LIÉES XAJAX
Source avec Zip AUTOCOMPLETION AVANCÉE EN AJAX
Source avec Zip EXEMPLE PHP AJAX
Source avec Zip FORMULAIRE EN PHP FLASH ENVOYER PAR MAIL

 Sources de la même categorie

Source avec Zip AJOUT D'UN RENDEZ-VOUS DANS UN CALENDRIER EXCHANGE 2003 par SachaWolf
TRANSFORMER DU TEXTE OU DE L'HTML EN TEXTE CONFORME À LA NOR... par fyav
Source avec Zip FORMULAIRE EMAIL AVEC PIECE JOINTE REPRIS DE LITTLEBUBU par cfndiaye
Source avec Zip Source avec une capture MESSAGERIE INTERNE AVEC FICHIER TEXTE par polly19
Source avec Zip FORMULAIRE EVOIE ET PLUS par florentinul

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture SANYBEE GALLERY par sakini
Source avec Zip GESTIONNAIRE DE BASES DE DONNÉES par SirGix
Source avec Zip ECHANGE DE LIENS AUTOMATIQUE par maximedt
Source avec Zip Source avec une capture CRÉATEUR AUTOMATIQUE DE SITE(MERCI A GUISX POUR SON SITE V3... par dydjy940
Source avec une capture SAUVEGARDE AUTOMATISÉE DE VOS BASES DE DONNÉES par malik7934

Commentaires et avis

Commentaire de JulioDelphi le 08/11/2006 13:04:18 administrateur CS

# /* Le temps d'exécution par défaut d'un script est de 30 secondes maximum */
# /* Nous nous allons mettre '0' pour qu'on aura la possibilité d'envoyé
# une grande quantité d'emails */
# set_time_limit(0);
si je lis : http://fr.php.net/manual/fr/function.set-time-limit.php
nul part je lis que si je mets 0 ça me permet d'envoyer plus de mails (dans le contexte de ton script)
tu penses que tu as besoin de plus de 30 secondes pour envoyer un mail() par php ?
je n'ai pas testé le script là mais euh ... ça envoie x mails selon mes x emails de ma BDD ou ça envoie un seul mail avec les x personnes dans le champs "destinataire".
selon ce que je vois, je dirais x mails, donc 1 seul par personne, mais le $em tout seul me chiffonne.
quelqu'un peut m'eclairer ?

Commentaire de younes371 le 08/11/2006 14:52:35

t as ça :
$em = $array["email"];
  
/* L'envoie de l'email */
@mail("$em","sujet","messsage","From: admin@domaine.net");

a chque fois tu envoie le meme message(email) pour $em .
donc le meme email pour plusieurs adresse-mail ( personnes ) !!

Commentaire de JulioDelphi le 08/11/2006 14:58:18 administrateur CS

ça envoie un seul courrier à x personnes ?
donc dans le champs destinataire je me retrouve avec mes x emails de ma BDD.
je comprends que l'envoie puisse etre lent.
et a la reception, j'aurais droit de connaitre les x adresses emails inscrites ! super cool pour le spam !
en parlant de spam, chez moi (et chez d'autres aussi j'imagine), un mail qui ne m'est pas destiné personellement est jeté a la corbeille car considéré comme un spam.
la bonne soluce serait de faire autant de mails de d'emails dans la BDD, avec une boucle pour chaque mail.

Commentaire de coucou747 le 08/11/2006 15:06:40

JulioDelphi, son code envoi un mail à une personne unique là... il a une boucle qui liste les entrées de sa base de donnée, et qui envoi le mail à CHAQUE...


mail($em,'sujet','messsage','From: admin@domaine.net ... et autres entêtes comme la date, des choses comme la prioritée, gestion des pièces jointes...') or ... gestion de l'erreur...

bref, là tu montres comment on envoi un mail vide, mais générer une newsletter, c'est spécifique à un type de site (l'architecture de la base de donnée, et autre), et c'est 100 fois plus compliqué que de lire une page de doc sur la fonction mail ou autre...

Bref, comme ça c'est innexploitable...

Commentaire de younes371 le 08/11/2006 15:07:42

D'accord,merci
je suis d'accord pour la bonne solution !
est ce tu peux mettre le bon code ici, commme ça j'améliore mon script.
Merci d'avance

Commentaire de JulioDelphi le 08/11/2006 15:14:00 administrateur CS

merci pour l'eclaicissement coucou
younes : c'est moi qui avait mal compris le code =) tu envoies bien un mail a une personne differente a chaque fois.
merci a webcron qui t'aides la dedans ;)

Commentaire de younes371 le 08/11/2006 21:57:42

c pas grave Julio, on est ici pour apprendre,
et changer les idées !

Commentaire de kankrelune le 13/11/2006 12:50:50

Plutot que d'utiliser set_time_limit() qui est désactivé chez la plupart des serveur mutualisés utilise plutot la temporisation... tu envois tes mails par block de x mail... imaginons que j'ais 100 mails à envoyer et que j'ais configuré les block à 50... une fois mes 50 premier mails envoyés la page ce réaffiche affichant le résultat des 50 premiers envois et en fin de page un bouton permettant l'envoi de 50 suivant (tu reprend ta boucle là où elle en était)... c'est ce que l'on utilise sur XOOPS... c'est un peu plus contraignant pour le webmaster mais bien plus sûr... .. .

@ tchaOo°

Commentaire de Pedrosa le 22/02/2007 11:59:30

Salut,
Merci pour ton script...
Justement, je suis en train d'en chercher un mais en asp.net. Pour que j'envoie des emails tous les 6 mois automatiquement, sans intervention de qui que ce soit.
Jer serais content de ton aide...
Merci d'avance

Commentaire de younes371 le 28/02/2007 13:31:06

salut Pedrosa,
tu fs un scritp normale avec asp(c facile a faire, tu as le syntaxe en haut avec php ...).
et dans http://www.webcron.org/  tu donne l url de ta page .asp et tu choisis 6 mois.

Commentaire de younes371 le 28/02/2007 13:33:45

salut Pedrosa,
tu fs un scritp normale avec asp(c facile a faire, tu as le syntaxe en haut avec php ...).
et dans http://www.webcron.org/  tu donne l url de ta page .asp et tu choisis 6 mois.

voilà un exemle :
http://asp-php.net/scripts/asp-php/mailing-list.php?page=2

Commentaire de Oxydoreduction le 23/08/2007 15:59:57

Pensez à proteger l'accès auy script à executé. Surtout pour du mailing. Si tu veux que ton script s'execute tous les 6 mois, faut pas qu'un petit malinte le déclanche toutes les 3 minutes.
Pour proteger tu passes des variables de log et pass en Get par exemple (dans l'URL).
Ou bien, sur www.saint-pitoune-la-creuviere.com , le service d'activation automatique gère les accès protégés par .htaccess. Tu rentres le nom d'utilisateur et le mot de passe en même temps que ton URL.

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Exécution automatique d'une tâche [ par wininfos ] Bonjour,Sur mon site, j'ai des rapports à envoyer par mail, mais je ne vais pas meconnecter tous les jours à une heure précise pour que je lance la pr envoi mail automatique [ par dargaud ] Bonjour,je suis tout nouveau en php et j'aimerai avoir un renseignement :est-il possible d'envoyer un mail automatiquement à une certaine heure tous l Mail d'avertissement automatique [ par ass ] Bonjour!Je voudrais un script qui me permet d'avertir mes clients de manière automatique un mois avent la fin de l'habonnement.Ils s'inscrivent via un redirection automatique [ par Daimadoshi ] je voudrair faire une redirection automatique e nenvoyant des valeur contenu ds des variable Detection automatique de flach [ par frespech ] qqun pourait-il m'indiquer comment faire pour detecter la presence de falsh sur le poste qui se connecte au site. destructeur automatique en php [ par 751 ] Je cherche une equivalence du destructeur Finalize() du langage Cpp en PHP.Merci d'avance.:) Execution automatique d'une page php a une heure precise [ par TiotBour ] Voila je voudrai savoir comment faire pour qu'une page php s'execute toute seule sans qu'il y est besoin de cliquer dessus (enfin 1 fois pour la lance création automatique table et champs [ par liege ] bonsoir,je cherche un code à insérer dans le fichier de récupération des données de mon formulaire pour qu'il crée automatiquement la table si elle n' Lien automatique vers une autre page. [ par jcdc ] Voilà mon soucis. Sur une page en php, je fais un test. ET j'aimerais que selon le résultat de ce test, on soit redirigé vers une autre page. Je ne pe Menu déroulant automatique ... [ par oki972 ] Bonjour je suis débutant et j'ai un gros soucis.J'ai une base de donnée qui recense des titres de livres et pour supprimer le champ correspondant a un


Nos sponsors


Appels d'offres

Sondage...

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,593 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales