- Home
- Categorie
- Coding e Sistemistica
- PHP
- Destinatari newsletter per categoria
-
Destinatari newsletter per categoria
Ciao a tutti torno per farvi questa domanda, sto facendo una semplice newsletter, quando registro un utente può scegliere per cosa vuol ricevere la newsletter_nel mio caso ho 3 scelte (ad esempio:_sport,_economia,_salute).
Non è richiesto che un utente possa registrarsi a più di una categoria, cioè se sceglie sport non può scegliere economia o salute e viceversa.
La Mia domanda è questa, dato che sarà poi l'admin a decidere a chi mandare la newsletter, adesso ho fatto in modo che premendo invia la manda a tutti e sotto al form di invio della mail ho messo 3 checkbox corrispondenti alle categorie, come posso fare per far scegliere all'admin a quale mandarle? Cioè, se non seleziono i checkbox le manda a tutti se seleziono uno o più checkbox le vorrei mandare a quella categoria e basta, per ora l'ho impostato così:[php]if($_POST['submit2'] && $_POST['messaggio'] && $_POST['oggetto']) {
//salvo una copa della mail inviata
$sql= "INSERT INTO email(ema_oggetto,ema_testo) VALUES('$_POST[oggetto]','$_POST[messaggio]')";
$dati = mysql_query($sql) or die ($sql);//seleziono tutti
$query = "SELECT * FROM membri";
$risultato = mysql_query($query);$query2 = "SELECT mem_id FROM membri";
$risultato2 = mysql_query($query2);
$num = mysql_num_rows($risultato2);
$messaggio_formattato = $_POST['messaggio'];$messaggio = <<<EOMESS
$messaggio_formattato
EOMESS;for($i=0;$i<$num;$i++) {
$mail = mysql_result($risultato, $i, 'mem_email');
$invio = mail("$mail", "$oggetto", "$messaggio", "From: $mail_admin");
}
if($invio) {
echo"<script>alert('Newsletter inviata con successo');</script>";
echo "<a href=admin.php>torna alla homepage</a>";
}[/php]
-
Ciao Symon83
Puoi creare una tabella relativa alle categorie ed associare il relativo id agli utenti. Quando selezioni una (o più checkbox) ti recuperi il/i value (che sarà/saranno uguale/i all'id della categoria relativa) e quindi a seconda del valore/i ricevuto/i ti bastera' variare la tua select in:
[php]"SELECT * FROM membri WHERE id_cat='$id_cat1'"[/php]Se hai più valori ti basterà aggiungere un:
[php]" OR id_cat='$id_cat2'"[/php]e così via