Problème avec script de newsletter
Posté : 15 nov. 2006, 07:59
Bonjour,
Comme certain auront pu le remarquer je suis nouveau, je ne savais pas trop dans quelle catégorie poster ce sujet mais j'utilise php5 alors tant qu'a faire... ^^
Bon maintanant voici mon problème:
Bonsoir,
Ce script qui permet d'envoyer des newsletters (comme vous aurez pu le remarquer j'utilise le système de template phplib):
Il n'y aurait pas moyen qu'il soit donc plus court à s'executer ?
Par exemple comment font les gros site pour envoyer des newsletters à des milliers de personnes, j'imagine que ça ne pend pas 20 minutes...
Merci d'avance pour vos réponse :p
Comme certain auront pu le remarquer je suis nouveau, je ne savais pas trop dans quelle catégorie poster ce sujet mais j'utilise php5 alors tant qu'a faire... ^^
Bon maintanant voici mon problème:
Bonsoir,
Ce script qui permet d'envoyer des newsletters (comme vous aurez pu le remarquer j'utilise le système de template phplib):
<?php
$titrePage = "Envoyer une newsletter"; // Titre de la pages
$cheminTemplate = '../includes/'; // Indique ici le chemin où se trouve le fichier template.php
$cheminHtml = '../templates/'; // Indique ici le chemin des fichiers.tpl
$repBase = "../"; // Indique ici le chemin du répertoire base
$listeCSS = array('formulaire.css'); // Liste des css à charger
include($cheminTemplate.'template.php');
$template = new Template($cheminHtml);
include($cheminTemplate.'redirection.php');
session_start();
if(!empty($_SESSION['admin']) && !empty($_SESSION['superadmin']) && $_SESSION['superadmin'] == 'oui') {
if(isset($_POST['texte'], $_POST['sujet'])) {
if(!empty($_POST['texte']) && !empty($_POST['sujet'])) {
$expediteur = "[email protected]";
$sujet = '[ Newsletter BoT-DoPo ] '.$_POST['sujet'];
$message = '
<html>
<head>
</head>
<body>
'.nl2br($_POST['texte']).'
</body>
</html>
';
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= 'To: ' . $expediteur . '' . "\r\n";
$headers .= 'From: ' . $expediteur . '' . "\r\n";
include($cheminTemplate.'sql.php');
connect();
$retour = mysql_query('SELECT email FROM channels WHERE newsletter="oui"'); // On sélectionne les adresses mail des membres
while ($donnees = mysql_fetch_array($retour))
{
mail($donnees['email'], $sujet, $message, $headers);
}
redirection('admin/index.shtml', 'La newsletter a bien été envoyée.', '4', @$repBase, $template);
}
else {
redirection('admin/envoi-newsletter.shtml', 'Vous n\'avez pas rempli tous les champs.', '4', @$repBase, $template);
}
}
else {
include($cheminTemplate.'haut.php');
$template->set_filenames(array(
'envoi_newsletter' => 'admin/envoi_newsletter.tpl'
));
$template->pparse('envoi_newsletter');
include($cheminTemplate.'bas.php');
}
}
else {
redirection('admin/index.shtml', 'Vous n\'êtes pas autorisé à accéder à cette page.', '4', @$repBase, $template);
}
?>
Pour l'instant je ne l'utilise qu'en local sur un ordinateur assez puissant et une connexion 8 méga avec le serveur smtp de neuf.fr mais je trouve que ce script est quand même long à s'executer.Il n'y aurait pas moyen qu'il soit donc plus court à s'executer ?
Par exemple comment font les gros site pour envoyer des newsletters à des milliers de personnes, j'imagine que ça ne pend pas 20 minutes...
Merci d'avance pour vos réponse :p