Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    Problema con newsletter

    Ciao a tutti.
    Ho un problema con una newsletter.
    In pratica ci sono poco meno di 4000 iscritti solo che quando provo ad inviare la news il server di aruba mi da un errore di ping time, e manda questa email solo a 2000 iscritti.

    Le email sono in un DB. Avevo pensato di suddividere a metà la lista delle email per poi mandare la news prima alla prima metà di indirizzi poi alla seconda.

    Mi aiutereste a realizzarlo?

    Questo è il pezzo di codice per inviare le email agli indirizzi email del db:
    codice:
            
    ...
    ...
    
    $DB_query = "SELECT email FROM archivio";
    $DB_Ar_Record = mysql_query ($DB_query, $DB_conn) or (array_push($Ar_Errors, "Non riesco ad eseguire la query $DB_query
    "));
            
    while($curUser_Ar = mysql_fetch_array($DB_Ar_Record)){
    
    $email = $curUser_Ar["email"];
    
    ...
    ...

  2. #2
    semplice...invia le mail a blocchi di 100... basta che nella query inserisci la clausola LIMIT

  3. #3
    quindi:

    SELECT email FROM archivio LIMIT 500

    ad esempio?

  4. #4
    Ciao, credo che dinucciarturo, intendesse dire qualcosa tipo :

    Codice PHP:

    SELECT email FROM archivio LIMIT $start
    100 
    in modo che puoi passarti $start tramite GET e prendere le email di 100 in 100...

    ma (parere personale), la soluzione ottimale credo sia quella di mandare 1 email e mettere ad esempio 49 destinatari in BCC, cosicchè, per mandare 1000 newsletter devi eseguire solo 20 volte la funzione mail()...
    sarebbe un bel risparmio....
    Che le ali della libertà non perdano mai le piume...

    Gesù salva, Buddha fa backups incrementali.

  5. #5
    MA come aggiorno $start?cioè una volta che lo manda ai primi 100, come incremento di altri 100 la variabile $start?la passo col form dell'invio news

    e come potrei fare a selezionare 49 indirizzi alla volta?

  6. #6
    ho urgente bisogno di quest'aiutino

  7. #7
    Allora. ho provato a fare così:

    codice:
    $num_email=mysql_num_rows($DB_Ar_Record);
    if ($start<=$num_email)
    {
       $start=$start+100;
       header("Location: ".$_SERVER['PHP_SELF']."?start=".$start."&oggetto=".$oggetto."&messaggio=".$messaggio);
       exit;               
    };
    in pratica richiamo con header/location la pagina tot volte finchè $start non corrisponde al numero di email. Questo per far si che la clausola LIMIT parta da 0,100 , poi al primo richiamo diventi 100,100 e così via.


    Dal form passavo oggetto e messaggio tramite POST ma ho cambiato in GET perchè con Location non sapevo come richiamare queste due variabili ad ogni richiamo della pagina.

    Adesso c'è un problema...Le email arrivano a tutti i destinatari ma solo il primo legge il messaggio,mentre l'oggetto dell'email è visibile a tutti.

    Per favore aiutatemi

  8. #8
    risolto...oggetto e messaggio visibile a tutti.

    C'è un modo di passare delle variabili con POST quando si usa header(Location:..) invece che scriverle nella query string per poi richiamarle con GET?

  9. #9
    Mi serve il vostro aiuto

    La questione è questa...
    io ho un form che passa con post $oggetto e $messaggio per spedire una mail a degli indirizzi presenti sul db.

    Siccome devo incrementare $start che si trova nella clausola limit della query: "SELECT email FROM archivio LIMIT $start, 100", richiamo la pagina con questo codice:

    codice:
    $num_email=mysql_num_rows($DB_Ar_Record);
    if ($start<=$num_email)
    {
       $start=$start+100;
       header("Location: ".$_SERVER['PHP_SELF']."?start=".$start."&oggetto=".$oggetto."&messaggio=".$messaggio);
       exit;               
    };
    ma il problema è che devo anche allegare un file, quindi assieme a $messaggio, $ogetto e $start viene chiamata anche la funzione dei file "$_FILES" con tutte le informazioni del file.

    Questa funzione ($_FILES) funziona solo col metodo post quindi quando richiamo la pagina con l'HEADER mi da un errore in $_FILES.

    ----

    come posso risolvere?
    grazie milla

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.