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

    Problema con script newsletter

    devo mandare email tramite uno script...

    lo script funziona così prende i destinatari da una tabella mysql(circa 1500 record) e tramite un ciclo eseguwe tutte le volte l'istruzione mail il problema è che arrivato a un certo punto di invii circa 600 si blocca lo script e nn va più avanti anche se all'interno del cilco ho impostato set_time_limit (0);

    cosa devo fare per migliorare lo script e per mandare tutti i nominativi?

  2. #2
    Nessuno ha uno script per newsletter che vada bene oltre i 2000 mail perchè scorrere con il ciclo while è troppo lento e si blocca....

    ????

  3. #3
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,361
    Non potresti mandare 100 mail ogni volta ? Tipo ....

    codice:
    <?php
    if (! isset($_GET['conta'])) {
     $conta = 0;
    } else {
     $conta = $_GET['conta'];
    }
    $query = "select quello che c'è da selezionare from tabella where ... limit $conta, 100";
    $res   = mysql_query($query);
    if (mysql_num_rows($res) > 0) {
     .... ciclo per mandare le mail;
     $conta = $conta + 100;
     header("location:mia_pagina.php?conta=$conta");
    } else {
     header("location:torno_da_dove_provengo.php");
    }
    ?>
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  4. #4
    Non ci mette tanto uno script del genere per una newsletter oltre le 2000 mail?
    come posso fare per incollare con la funzione mail nel campo ccn 50 indirizzi alla volta?

  5. #5
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,361
    Originariamente inviato da predator80
    Non ci mette tanto uno script del genere per una newsletter oltre le 2000 mail?
    come posso fare per incollare con la funzione mail nel campo ccn 50 indirizzi alla volta?
    Qual'è lo script che usi ?
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  6. #6
    while ($row=@mysql_fetch_array ($query))
    {


    $dest="$row[mail]";
    mail ($dest, $ogg, $corpo, $headers);
    echo "$row[mail]
    ";
    set_time_limit (0);
    }

    come posso fare per mandare al ccn 50 mail al colpo?

  7. #7
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,361
    Pensavo a qualcosa del genere.

    codice:
    <?
    set_time_limit (0); 
    if (! isset($_GET['conta'])) {
     $conta = 0;
    } else {
     $conta = $_GET['conta'];
    }
    $query = "select * from tabella limit $conta, 100";
    $row   = mysql_query($query);
    if (mysql_num_rows($row) > 0) {
     while ($row=@mysql_fetch_array ($query)) { 
      $dest="$row[mail]"; 
      mail ($dest, $ogg, $corpo, $headers); 
      echo "$row[mail]
    "; 
     }
     $conta = $conta + 100;
     header("location:invio_mail.php?conta=$conta");
    }
    ?>
    D'altronde puoi mettere diversi indirizzi mail separati da una virgola nel parametro $dest. Ma in questo caso penso che tutti vedranno tutti gli indirizzi.
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  8. #8
    Ho modificato lo script per mandare in CCN ma la mail nn arriva a tutti gli utenti come mai?

    $sql = "SELECT * FROM mailing order by id";
    $query = @mysql_query ($sql, $connessione);
    $mess1 = stripslashes($mess);

    $ogg=stripslashes($_POST[oggetto]);
    $corpo="$corpo";
    $headers .="From: prova<newsletter@prova.net>\n";
    $headers .="Content-Type: text/html; charset=iso-8859-1\n";

    echo "[img]../../../images/logo.gif[/img]
    Email inviata a:
    ";
    $corpo=$mess1; //aggiunto io
    $i=0;
    $lista="";
    while ($row=@mysql_fetch_array ($query))
    {
    if($i<=30)
    {
    $lista.=trim($row[mail]).",";
    $i++;
    }
    else
    { $intestazione=$headers."Bcc:".$lista."\r\n";
    //mail ($dest, $ogg, $corpo, $intestazione);
    set_time_limit (0);
    $i=0;
    echo $lista."
    ";
    $lista="";
    }
    }

    @mysql_close ($connessione);

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 © 2024 vBulletin Solutions, Inc. All rights reserved.