Ciao a tutti!Ho un piccolo quesito da sottoporvi e al quale non riesco a trovare risposta da solo..forse per molti di voi sarà una cavolata,ma per me sta diventando un tormento.
Dunque vado al sodo,ho un sito web con database sql e codice scritto in php, all'interno del sito viene utilizzato un sistema di messaggistica tra iscritti. Io come gestore del sito ho un pannello dove pubblicare su di una bacheca le varie news,io vorrei riuscire a far inviare un messaggio (tramite la messaggistica interna) a tutti gli iscritti quando pubblico qualcosa di nuovo su di questa bacheca,di modo tale che tutti siano avvisati della pubblicazione.
Sul database ho una tabella denominata "personaggi" con i vari campi, tra cui id e nome dell'utente iscritto e poi un'altra tabella denominata "messaggi" con il campo mittente,destinatario,testo ecc
e questo è il codice che ho scritto:
di per se il codice funziona,il problema è che il messaggio viene inviato solo al primo utente che si è iscritto e a nessun altro.
Suppongo e sicuramente sbaglio qualcosa,qualcuno riuscirebbe ad aiutarmi a correggere l'errore?
grazie in anticipo e chi mi salverà da questa croce!
Dunque vado al sodo,ho un sito web con database sql e codice scritto in php, all'interno del sito viene utilizzato un sistema di messaggistica tra iscritti. Io come gestore del sito ho un pannello dove pubblicare su di una bacheca le varie news,io vorrei riuscire a far inviare un messaggio (tramite la messaggistica interna) a tutti gli iscritti quando pubblico qualcosa di nuovo su di questa bacheca,di modo tale che tutti siano avvisati della pubblicazione.
Sul database ho una tabella denominata "personaggi" con i vari campi, tra cui id e nome dell'utente iscritto e poi un'altra tabella denominata "messaggi" con il campo mittente,destinatario,testo ecc
e questo è il codice che ho scritto:
PHP:
$rs=query("SELECT * FROM personaggi WHERE id LIKE '%' ");
$user_id=$rs['id'];
if (isset ($_POST['testo_news']))
{
$testo_news=$_POST["testo_news"];
$testo_news=str_replace("'","''", $testo_news);
$testo_news = mysql_real_escape_string($testo_news);
$testo_news = filter_var($testo_news, FILTER_SANITIZE_STRING);
$titolo_news=$_POST["titolo_news"];
$titolo_news=str_replace("'","''", $titolo_news);
$titolo_news = mysql_real_escape_string($titolo_news);
$titolo_news = filter_var($titolo_news, FILTER_SANITIZE_STRING);
$data_news=$_POST["data_news"];
$data_news=str_replace("'","''", $data_news);
$autore=$_POST["autore"];
$autore=str_replace("'","''", $autore);
$tipo=$_POST["tipo"];
$tipo=str_replace("'","''", $tipo);
#inseriso i dati
$rs = "INSERT INTO news (testo_news, titolo_news, data, autore, tipo) VALUES('$testo_news', '$titolo_news', NOW() , '$_SESSION[nome_pg]', '$tipo')";
$Result = mysql_query($rs);
#iinvio missiva a tutti gli iscritti
$rs = "INSERT INTO messaggi_on (mittente_nome, mittente, destinatario, data, titolo, testo) VALUES('Gestione','$_SESSION[id_pg]', '$user_id', NOW() , 'Notizie della Land-$titolo_news', '$testo_news')";
$Result = mysql_query($rs);
di per se il codice funziona,il problema è che il messaggio viene inviato solo al primo utente che si è iscritto e a nessun altro.
Suppongo e sicuramente sbaglio qualcosa,qualcuno riuscirebbe ad aiutarmi a correggere l'errore?
grazie in anticipo e chi mi salverà da questa croce!
Ultima modifica di un moderatore: