Visualizzazione risultati 1 fino 6 di 6

Discussione: Invio newsletter, indirizzi in file txt

  1. #1
    Guest

    Predefinito Invio newsletter, indirizzi in file txt

    Ciao a tutti,

    Devo mettere un sito su un'host sprovvisto di database quindi sono obbligato ad inviare le newsletter agli indirizzi elencati in un file txt (uno sotto l'altro) non da database.

    La mia domanda è: come invio le newsletter ad ogni indirizzo presente nella lista?

    Grazie.

  2. #2
    L'avatar di javascripter
    javascripter non è connesso Moderatore
    Data registrazione
    14-02-2010
    Messaggi
    1,114

    Predefinito

    La funzione file fa al caso tuo, recupera il codice di un file e lo divide in un array per ogni ritorno a capo:
    Codice PHP:
    $emails = file('file_indirizzi_email.txt', FILE_IGNORE_NEW_LINES);

    foreach(
    $emails as $email) {
    mail($email, 'soggetto', 'messaggio'/*, eventuali headers */);
    }

  3. #3
    Guest

    Predefinito

    funziona perfettamente, grazie mille

  4. #4
    itipfaenza non è connesso Neofita
    Data registrazione
    02-11-2010
    Messaggi
    2

    Predefinito

    L'ultima volta funzionava tutto correttamente, adesso non so perchè da errore in quella parte di codice:

    Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in /membri/itipfaenza/invia.php on line 94

    dove il codice è il seguente (tagliato dal resto della pagina):

    <?php
    $password=$_GET['pass'];
    $code="********************";
    if($password==$code){

    $oggetto=$_POST['oggetto'];
    $messaggio=$_POST['messaggio'];
    $gruppo=$_POST['gruppo'];

    if(isset($oggetto) && isset($messaggio)){

    if($gruppo=="riviste"){
    $emails = file('riviste.txt', FILE_IGNORE_NEW_LINES);

    foreach($emails as $email) {
    mail($email, $oggetto, $messaggio');
    }

    echo "Newsletter mandata al gruppo Riviste.";
    }elseif($gruppo=="utenti"){
    $emails2 = file('pblcsrrgstrd.txt', FILE_IGNORE_NEW_LINES);

    foreach($emails2 as $email2) {
    mail($email2, $oggetto, $messaggio');
    }
    echo "Newsletter mandata al gruppo Utenti.";
    }elseif($gruppo=="aziende"){
    $emails3 = file('aziende.txt', FILE_IGNORE_NEW_LINES);

    foreach($emails3 as $email3) {
    mail($email3, $oggetto, $messaggio');
    }
    echo "Newsletter mandata al gruppo Aziende.";
    }else{
    echo "Devi selezionare un gruppo.";
    }

    }else{
    echo "Non hai il permesso di inviare le newsletter.";
    }

    }else{
    echo "Campo Oggetto e/o Messaggio vuoto.";
    }
    ?>
    Grazie.
    Ultima modifica di itipfaenza : 02-11-2010 alle ore 21.30.59

  5. #5
    karl94 non è connesso Staff AV
    Data registrazione
    03-10-2005
    Messaggi
    17,744

    Predefinito

    Tutte le volte che richiami la funzione mail c'è un'errore di sintassi: hai messo un apice che non dovrebbe esserci prima della parentisi chiusa.
    P.s.: il tuo codice è ridondante, l'ho migliorato
    Codice PHP:
    <?php
    //ATENZIONE, codice non testato, potrebbero esserci errori
    if($_GET['pass'] == '********************'){
    $oggetto = $_POST['oggetto'];
    $messaggio = $_POST['messaggio'];
    if(isset(
    $oggetto) && isset($messaggio)){
    switch(
    $_POST['gruppo']){
    case
    'riviste': $file = 'riviste.txt';
    case
    'utenti': $file = 'pblcsrrgstrd.txt';
    case
    'aziende': $file = 'aziende.txt';
    default: echo
    "Devi selezionare un gruppo.";
    }
    if(
    $file){
    $emails = file($file, FILE_IGNORE_NEW_LINES);
    foreach(
    $emails as $email) {
    mail($email, $oggetto, $messaggio);
    }
    echo
    "Newsletter mandata al gruppo Riviste.";
    }
    }else{
    echo
    "Campo Oggetto e/o Messaggio vuoto.";
    }
    }else{
    echo
    "Non hai il permesso di inviare le newsletter.";
    }
    ?>
    Ultima modifica di karl94 : 02-11-2010 alle ore 21.53.34

  6. #6
    itipfaenza non è connesso Neofita
    Data registrazione
    02-11-2010
    Messaggi
    2

    Predefinito

    è vero l'ho notato ora, grazie mille anche per il codice migliorato.

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •