Visualizzazione dei risultati da 1 a 2 su 2

Discussione: mailing list php

  1. #1
    Utente di HTML.it L'avatar di ty7
    Registrato dal
    Jun 2004
    Messaggi
    42

    mailing list php

    AIUTO!
    Devo consegnare un sito entro l'una e non mi funziona la mailing list!
    Ho scaricato lo script 4_mail_list e modificato leggermente i file, principalmente ho messo il testo in italiano.
    Nella mia cartella ho 3 files:
    - mailinglist.php
    - subscribe.php
    - emails.txt (file di testo che memorizza gli indirizzi)


    codice:
    Il codice di mailinglist.php è:
    <?
    // Some variables;
    // Your emails list file;
    $filelist = "emails.txt";
    // Email headers that subscribed users see
    // when you send them an email;
    $adminmail = "leslie@caricia.com";
    $emailheaders = "Da: " . $adminmail . "\nRispondi a: " . $adminmail;
    // By default we display entries;
    if (!isset($mode))
       $mode = "unknown";
       
    // Since all administration is in one file,
    // we choose what to to do now;
    switch ($mode) {
           case "create": createList(); break;
           case "display": displayEntries($filelist); break;
           case "add": addEntry($email); break;
           case "edit": displayEditForm($id); break;
           case "doEdit": editEntry($email, $oldvalue); break;
           case "delete": deleteEntry($id); break;
           case "send": sendNews($subject, $message); break;
           default:
           if (file_exists($filelist)) {
              displayEntries(); displayAddEntryForm();
           }
    
    }
    
    
    
    /* THIS IS THE PART WHERE WE CREATE A MAILING LIST FILE AUTOMATICALLY */
    /* IGNORE IT IF YOU HAVE CREATED IT MANUALLY (NOTHING WILL BE DISPLAYED */
    if (!file_exists($filelist)) {
       echo "<form name=createFile action=mailinglist.php method=post>";
       echo "<input type=submit name=mode value=Crea file mailing list>";
       echo "</form>";
       exit;
    }
    
    function createList() {
             $fp = fopen($GLOBALS["filelist"], "w");
             if ($fp) {
                echo "<h2>Mailing list file creata con successo!</h2>";
                echo "" . $GLOBALS["filelist"] . "";
                echo "<meta http-equiv='Refresh' content='1; URL=mailinglist.php'>";
                exit;
             }
             else
                echo "Errore!";
    }
    /**************************************************************************/
    
    
    // Sends news to subscribers;
    function sendNews($subject, $message) {
             $filecontents = file($GLOBALS["filelist"]);
             for ($i=0;$i<sizeof($filecontents);$i++) {
                 $a = mail($filecontents[$i], $subject, stripslashes($message), $GLOBALS["emailheaders"]);
                 if (!$a)
                    exit;
             }
             echo "Spam inviato! ;)";
             echo "<meta http-equiv='Refresh' content='1; URL=mailinglist.php'>";
             exit;
    }
    
    // Displays the form to add emails to list;
    function displayAddEntryForm() {
             echo "<h2>Aggiungi email alla lista:</h2>";
             echo "<form name=addEntry action=mailinglist.php method=get>";
             echo "<input type=text name=email>";
             echo "<input type=hidden name=mode value=add>";
             echo "<input type=submit name=submit value=aggiungi>";
             echo "</form>";
    }
    
    // Adds emails to list;
    function addEntry($email) {
             $fp = fopen($GLOBALS["filelist"], "a");
             $emailsize = strlen($email . "\n");
             $fw = fwrite($fp, $email . "\n", $emailsize);
             if ($fw) {
                echo "<h2><div align=center>Entry aggiunta!</div></h2>";
                echo "<meta http-equiv='Refresh' content='1; URL=mailing.php'>";
                exit;
             }
             else
                echo "Error!";
    }
    
    // Displays emails from list;
    // by default it display last 10 emails;
    function displayEntries() {
             echo "
    Mostra ultime <a href=mailinglist.php?limit=10>10 emails</a> ||
             <a href=mailinglist.php?limit=20>20 emails</a> ||
             <a href=mailinglist.php?limit=50>50 emails</a> ||
             <a href=mailinglist.php?showall=>Mostra tutte</a>
    
    ";
             $filecontents = file($GLOBALS["filelist"]);
             if (isset($GLOBALS["limit"]))
                $limit = $GLOBALS["limit"];
             if ((!isset($GLOBALS["limit"])) and (!isset($GLOBALS["showall"])))
                $limit=10;
             if (isset($GLOBALS["showall"])) {
                for ($i=sizeof($filecontents)-1;$i>=0;$i--) {
                    echo $filecontents[$i] . " <a href=mailinglist.php?mode=edit&id=" .
                    $filecontents[$i] . ">Modifica</a> || <a href=mailinglist.php?mode=delete&id=" .
                    $filecontents[$i] . ">Elimina</a>
    ";
                }
             }
            elseif (isset($limit)) {
                    $count = 1;
                    for ($i=sizeof($filecontents)-1;$count<=$limit;$i--) {
                    echo $filecontents[$i] . " <a href=mailinglist.php?mode=edit&id=" .
                    $filecontents[$i] . ">Modifica</a> || <a href=mailinglist.php?mode=delete&id=" .
                    $filecontents[$i] . ">Elimina</a>
    ";
                    $count++;
                }
            }
    
    
    }
    
    // Displays the form to edit an email;
    function displayEditForm($id) {
             echo "<h1>Modifica email:</h1>";
             echo "<form name=editForm action=mailinglist.php method=get>";
             echo "<input type=text name=email value=" . $id . ">";
             echo "<input type=hidden name=oldvalue value=" . $id . ">";
             echo "<input type=hidden name=mode value=Modifica>";
             echo "<input type=submit name=submit value=Aggiorna>";
             echo "</form>";
             exit;
    }
    
    // Edits an email and writes the updated file;
    function editEntry($email, $oldvalue) {
             $filecontents = file($GLOBALS["filelist"]);
             for ($i=0;$i<sizeof($filecontents);$i++) {
                 if (chop($filecontents[$i]) == $oldvalue) {
                    $filecontents[$i] = $email . "\n";
                    $fp = fopen($GLOBALS["filelist"], "w+");
                    for ($a=0;$a<sizeof($filecontents);$a++) {
                        $emailsize = strlen($filecontents[$a] . "\n");
                        $fw = fwrite($fp, $filecontents[$a], $emailsize);
                    }
                    echo "<h2><div align=center>Entry modificata!</div></h2>";
                    echo "<meta http-equiv='Refresh' content='1; URL=mailinglist.php'>";
                    exit;
                 }
             }
    }
    
    // Deletes an email and writes an updated file;
    function deleteEntry($id) {
             $filecontents = file($GLOBALS["filelist"]);
             for ($i=0;$i<sizeof($filecontents);$i++) {
                 if (chop($filecontents[$i]) == $id) {
                    $filecontents[$i] = "";
                    $fp = fopen($GLOBALS["filelist"], "w+");
                    for ($a=0;$a<sizeof($filecontents);$a++) {
                        $emailsize = strlen($filecontents[$a]);
                        $fw = fwrite($fp, $filecontents[$a], $emailsize);
                    }
                    echo "<h2><div align=center>Entry eliminata!</div></h2>";
                    echo "<meta http-equiv='Refresh' content='1; URL=mailinglist.php'>";
                    exit;
                    
                 }
             }
    }
    
    ?>
    <h2>Inserire qui il messaggio da inviare a tutti gli iscritti alla mailing list</h2>
    <form name=sendEmail action=mailinglist.php method=post>
    Oggetto:
    <input type=text name=subject>
    
    Messaggio:
    <textarea name=message rows=10 cols=50></textarea>
    
    <input type=submit name=mode value=Invia>
    </form>
    codice:
    Il codice di subscribe.php è:
    <?
    $filelist = "emails.txt";
    if (isset($email)) {
       addEntry($email);
    }
    
    function displayAddEntryForm() {
             echo "Inserisci email:";
             echo "<form name=addEntry action=subscribe.php method=post>";
             echo "<input type=text name=email>";
             echo "<input type=submit name=submit value=inserisci>";
             echo "</form>";
    }
    
    // Adds emails to list;
    function addEntry($email) {
             $fp = fopen($GLOBALS["filelist"], "a");
             $emailsize = strlen($email . "\n");
             $fw = fwrite($fp, $email . "\n", $emailsize);
             if ($fw)
                echo "<h2><div align=center>Sei stato correttamente inserito nella mailing list!</div></h2>";
             else
                echo "Errore!";
    }
    
    displayAddEntryForm();
    ?>
    Vi prego datemi una mano!!!

  2. #2
    Utente di HTML.it L'avatar di ty7
    Registrato dal
    Jun 2004
    Messaggi
    42
    Vi prego...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.