Newsgroup: it.comp.www.php
Titolo: mailing list

come realizzare una semplice mailing list? ho trovato alcuni script su
freephp, ma non riesco a farne funzionare bene nessuno!!  =(
grazie,
michela
-- 
"... Vorrei difendere questo momento
e penso di sentirmi confusa e felice..."
Carmen Consoli

 freephp, ma non riesco a farne funzionare bene nessuno!!  =(
Beh, per inviare una mail basta la funzione mail().
Per una mailing list, puoi fare un ciclo su tutti gli indirizzi ed inviare 
la mail.
Questo funziona per POCHI indirizzi. Se ne hai molti ti va tutto in timeout.
Di solito si prepara una lista dei destinatari, tramite db o altro, e si fa 
un ciclo su un loro sottoinsieme, ad esempio 15/20 utenti.
Poi si richiama lo script, che spedisce ad altri 15/20 utenti.
E così via finchè non sono finiti.
Ovviamente il valore di 15/20 lo decidi tu facendo qualche prova sul server.
Potresti anche provare ad usare il campo CCN per spedire a più destinatari, 
ma non ho mai provao.
Infine, guarda se esistono script già fatti (sicuramente) e prendi spunto.
Ciao
Marco 

 Infine, guarda se esistono script già fatti (sicuramente) e prendi spunto.
guardato e preso spunto...
non mi spiego perchè, però, questo codice non funziona:
<?php
include ("config2.inc.php");
$db = mysql_connect($db_host, $db_user, $db_password);
if ($db == FALSE)
die ("Errore nella connessione. Verificare i parametri nel file
config.inc.php");
mysql_select_db($db_name, $db)
or die ("Errore nella selezione del database. Verificare i parametri nel
file config.inc.php");
$email=$_POST['mail'];
$query = "UPDATE news SET email='$_POST[mail]'";
if (mysql_query($query,$db))
echo "<br>Inserimento eseguito!!";
else echo "<br>Errore durante l'inserimento: " . mysql_error();
mysql_close($db);
?>
-----------------------------------
<FORM ACTION="send.php" METHOD="POST">
<P><CENTER><TABLE WIDTH="450" BORDER="1" CELLSPACING="2"
CELLPADDING="0">
  <CAPTION ALIGN="TOP">
      <I><FONT color="#990000" SIZE="+1"><strong><font
color="#004080">Iscriviti 
      alla Mailing List </font></strong></FONT><FONT SIZE="+1"><br>
      <br>
      <br>
      </FONT></I> 
      </CAPTION>
 
  <TR>
        <TD WIDTH="51%" height="46"> 
          <P><CENTER>
              <em><strong>Il tuo indirizzo e-mail</strong></em> 
            </CENTER></TD>
    <TD WIDTH="49%">
    <P><CENTER>
              <input type=text size=25 name=mail>
            </CENTER></TD>
  </TR>
  <TR>
        <TD WIDTH="51%" height="115">&nbsp; </TD> 
        <TD WIDTH="49%"> <P> 
            <input type=radio name=action value="subscribe" checked>
            Iscriviti<br>
            <input type=radio name=action value="unsubscribe">
            Cancella iscrizione
          <P> 
            <input type=submit value=INVIA>
        </TD>
  </TR>
</TABLE></CENTER><center>
  </CENTER></FORM>
------------------------------
cioè, mi scrive "inserimento eseguito", ma invece nel db non inserisce
niente!!   =(
dove sbaglio? sono 3 ore che lo guardo e mi sembra giusto!!  


 non mi spiego perchč, perň, questo codice non funziona:
Mmm, non so dove hai preso l'esempio, ma č tutto sbagliato.
A parte il fatto che non gestisce la spedizione, ma solo l'iscrizione alla 
mailing list.
Ciao
Marco 

 mailing list.
beh, infatti volevo intanto cominciare con una semplice iscrizione alla
ML...
 
grazie,


 ML...
Però rimane errato lo stesso. :-)
Dunque, il form in cui inserire i dati va bene.
Ma è sbagliato il codice php.
Infatti nel form c'è una checkbox per inserirsi/cancellarsi dalla lista.
Devi come prima cosa testare il valore della checkbox e poi comportarti di 
conseguenza:
- in caso di iscrizione devi fare una query di inserimento nel db (INSERT 
INTO...)
- in caso di cancellazione devi fare una query di eliminazione dal db 
(DELETE FROM WHERE...)
- tralasciamo la modifica
Ciao
Marco 

 
Una volta lessi che i messaggi di una newsletter, vanno mandati in cc e 
non in to, in questo caso non danni problemi.
E' vero, o il timeout è una problematica non risolvibile?
Grazie