Newsletter

Discussion dans 'Web, design' créé par PiaFlalCoOl, 23 Avril 2005.

Statut de la discussion:
Fermée.
  1. Offline
    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
    PiaFlalCoOl, 23 Avril 2005
    #1
  2. Offline
    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 ;)
    MbK_, 24 Avril 2005
    #2
  3. Offline
    PiaFlalCoOl NiuAge
    ouai...donc faut une BDD.
    THX
    PiaFlalCoOl, 24 Avril 2005
    #3
  4. Offline
    null ose();
    Tu peux inscire les mails dans un fichier et puis lister le fichier :wink:
    null, 24 Avril 2005
    #4
  5. Offline
    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 ?
    PiaFlalCoOl, 24 Avril 2005
    #5
  6. Offline
    null ose();
    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

    Oui
    null, 24 Avril 2005
    #6
  7. Offline
    PiaFlalCoOl NiuAge
    ok thx, ben je vais essayer de chercher comment on fait ça.
    PiaFlalCoOl, 24 Avril 2005
    #7
  8. Offline
    PiaFlalCoOl NiuAge
    J'ai trouvé un truc tout fait :p.
    Mais je dois faire ça pour l'installer :

    Je fais comment ? je vais dans ma base de données puis ?
    PiaFlalCoOl, 24 Avril 2005
    #8
  9. Offline
    null ose();
    "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:
    null, 24 Avril 2005
    #9
  10. Offline
    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.
    PiaFlalCoOl, 24 Avril 2005
    #10
Statut de la discussion:
Fermée.