Newsletter

Statut
N'est pas ouverte pour d'autres réponses.

PiaFlalCoOl

NiuAge
Quelqu'un saurait-il m'expliquer comment fonctionne un système de newletter.
Qui envoie les e mails ? un script ?
Qui décide du moment où seront envoyés les e-mails ?

THX
 

MbK_

Etudjant
bah les gens s'inscrivent, leur email va dans une BDD et qd tu veux, t'envois un mail à tous ceux qui sont dans ta BDD ;)
 
1er
OP
PiaFlalCoOl

PiaFlalCoOl

NiuAge
ouai...donc faut une BDD.
THX
 

null

ose();
PiaFlalCooL a dit:
ouai...donc faut une BDD.
Tu peux inscire les mails dans un fichier et puis lister le fichier :wink:
 
1er
OP
PiaFlalCoOl

PiaFlalCoOl

NiuAge
Tu peux dévelloper un peu ? thx.
Commet je "liste" le fichier ?

Récupérer l'email via un formulaire, ça ça va. Ensuite j'inscris les mails dans un fichier et je fais quoi ?

Cette méthode dispense de BDD ?
 

null

ose();
PiaFlalCooL a dit:
Commet je "liste" le fichier ?
Perso j'adore lire le fichier en entier et puis mettre dans un tableau en divisant par ligne (je trouve ça mieux car on peut retravailler correctement les chaînes

PiaFlalCooL a dit:
Cette méthode dispense de BDD ?
Oui
 
1er
OP
PiaFlalCoOl

PiaFlalCoOl

NiuAge
null a dit:
PiaFlalCooL a dit:
Commet je "liste" le fichier ?
Perso j'adore lire le fichier en entier et puis mettre dans un tableau en divisant par ligne (je trouve ça mieux car on peut retravailler correctement les chaînes

PiaFlalCooL a dit:
Cette méthode dispense de BDD ?
Oui
ok thx, ben je vais essayer de chercher comment on fait ça.
 
1er
OP
PiaFlalCoOl

PiaFlalCoOl

NiuAge
J'ai trouvé un truc tout fait ^^.
Mais je dois faire ça pour l'installer :

Créez la table MySQL suivante dans votre base de données (avec PHPMyAdmin par exemple). Voici sa déclaration :

CREATE TABLE listes (
email varchar(100),
liste varchar(100)
);
Je fais comment ? je vais dans ma base de données puis ?
 

null

ose();
PiaFlalCooL a dit:
Je fais comment ? je vais dans ma base de données puis ?
"Requête SQL" et colle la requête dans le grans champs.

J'ai vite fais ça sinon :

Code:
<?php
class newsletter
{
	var $file = "email.dat";
	var $email = "admin@site.com";
	
	function newsletter()
	{
	   if(!file_exists($this->file))
	      die("error : ".$this->file." not found");		
	} //end newsletter() -- constructor
	
	function format2Html($string)
	{
	   $string = str_replace("&", "&", $string);
   	   $string = str_replace("é", "é", $string);
   	   $string = str_replace("è", "è", $string);;
       $string = str_replace("â", "â", $string);
       $string = str_replace("à", "à", $string);
       $string = str_replace("’", "’", $string);
       $string = str_replace("'", "’", $string);
       $string = str_replace("ô", "ô", $string);
       $string = str_replace("û", "û", $string);
       $string = str_replace("ç", "ç", $string);
       $string = stripslashes($string);
       $string = stripslashes($string);
       $string = stripslashes($string);		
       
       return $string;
	} //end format2Html()
	
	function readEmails()
	{
	   $fp = fopen($this->file, "rb");
       $data = fread($fp, filesize($this->file));
   	   fclose($fp);
   	   
   	   $data = explode("\n", $data);
   	   
   	   return $data;
	} //end readFile()
	
	function addEmail($email)
	{	  
       $fp = fopen($this->file, "a");
       fputs($fp, $email."\n");
       fclose($fp);		
	} //end addEmail()
	
	function send($subject, $message)
	{
	  $from  = $this->email."\n";
      $from .= "MIME-version: 1.0\n";
      $from .= "Content-type: text/html; charset= iso-8859-1\n";
      
      $subject = $this->format2Html($subject);
      $message = $this->format2Html($message);
      
      $emails = $this->readEmails();   
      foreach($emails as $email)
         mail($email, $subject, $message, $from);
	} //end send()	
} //end newsletter class

$newsletter = new newsletter();
$newsletter->addEmail("test@test.com"); //ajouter une adresse e-mail
$newsletter->send("Salut", "Test message"); //envoyer un message
?>
C'est vachement basique (il ne gère pas les desinscriptions, etc) :roll:
 
1er
OP
PiaFlalCoOl

PiaFlalCoOl

NiuAge
thx !
Mais mon hébergeur a arrêté son activité, et j'arrive plus à accéder à ma base de donnée depuis le site.
 
Statut
N'est pas ouverte pour d'autres réponses.
Haut