Ciao a tutti.
Io vorrei creare una cosa del genere da mettere nell'header di ogni pagina:
Ovviamente la grafica è solo un esempio, l'ho disegnata con Paint!
A destra c'è il form per inviare il messaggio, dove ci sono due campi: quello per scrivere il messaggio e quello per scrivere il nome/nickname.
Allora io farei una cosa del genere:
FORM
Codice HTML:
<FORM action="add-mess.php" METHOD="POST">
<INPUT type="text" name="messaggio">
<INPUT type="text" name="nickname">
<input type="submit" value="Invia">
</FORM>
e nel file add-mess.php:
Codice PHP:
<?php
if(!(isset($_POST['messaggio']) && isset($_POST['nickname'])))
die('errore: non sono presenti tutti i dati!'); //messaggio di errore...
/*connessione al database*/
$db = mysql_connect('localhost','user','password');
if($db == FALSE)
die('Errore: impossibile connettersi al database!'); //messaggio di errore
if(!mysql_select_db('nomedb'))
die('Errore: impossibile accedere al database!');
$ris = mysql_query("INSERT INTO nome_tabella (messaggio,nickname) VALUES('".$_POST['messaggio']."','".$_POST['nickname']."')");
if(!$ris)
die('Errore: impossibile aggiungere valori nel database!');
mysql_close($db);
?>
Dopo aver creato la mia tabella sul database e dopo aver inserito i primi messaggi, avrei una cosa del genere:
Codice:
INSERT INTO `nome_tabella` (`id`, `nickname`, `messaggio`) VALUES
(1 , 'Tizio', 'messaggio numero uno'),
(2 , 'Caio', 'secondo messaggio'),
(3 , 'Sempronio', 'terzo messaggio bla bla bla');
E nell'header preleverei i dati dal database in questo modo:
Codice PHP:
<?php
/*connessione al database*/
$db = mysql_connect('localhost','user','password');
if($db == FALSE)
die('Errore: impossibile connettersi al database!'); //messaggio di errore
if(!mysql_select_db('nomedb'))
die('Errore: impossibile accedere al database!');
$ris = mysql_query('SELECT * FROM nome_tabella ORDER BY id DESC limit 5');
while($r = mysql_fetch_assoc($ris)) {
echo $r['id'], $r['nickname'], $r['messaggio'] ;
}
mysql_close($db);
?>
E fin qui mi sembra tutto ok e chiaro.
Però...
Vorrei che:
- I messaggi fossero scorrevoli (senza utilizzare il <marquee>);
- Un volta inviato il messaggio, vorrei che non si aprisse un'altra pagina (add-mess.php), ma che si refreshasse la pagina in cui si è inviato il messaggio, facendo visualizzare il messaggio stesso.;
- Che non si potessero inserire alcuni caratteri come @ e che non si potessero inserire alcune parole come http:// . Insomma, per evitare lo spam in qualche modo.