Creare un sistema di commenti agli articoli in php/mysql

In questo articolo tratteremo come creare un sistema di commenti agli articoli.

La tabella sql creata da:

CREATE TABLE `commenti` (
`id` int(11) NOT NULL auto_increment,
`data` varchar(15) NOT NULL default '',
`id_art` varchar(12) NOT NULL default '',
`tit_art` varchar(100) NOT NULL default '',
`commento` longtext NOT NULL,
`utente` varchar(40) NOT NULL default '',
PRIMARY KEY (`id`)
) TYPE=MyISAM;

La pagina che mostra i commenti e contiene in form per inserirne uno nuovo

<?
$obj->connessione();
$dati=mysql_query("select * from commenti where id_art='$id' order by data desc");
while($array=mysql_fetch_array($dati)){
echo"$array[data] da ";
echo"<a href=mailto:$array[utente]>$array[utente]</a><br>";
echo"$array[commento]<br>";
}
?>
<br>
<input type="button" value="link" onclick="document.theform.commento.innerHTML+='[a][/a]'">
<input type="button" value="codice" onclick="document.theform.commento.innerHTML+='[code][/code]'">
<input type="button" value="grassetto" onclick="document.theform.commento.innerHTML+='[b][/b]'">
<form method="post" action="savecomment.php" name="theform">
<input type="hidden" value="<?echo $id;?>" name="idart" >
<input type="hidden" value="<?echo $titolo;?>" name="titart">
Email :<input type="text" value="" name="email"> <br>
Commento:<br><textarea rows=13 cols=60 name="commento"></textarea><br>
<input type="submit" value="Inserisci">
</form>


 

La pagina savecomment.php che salva il commento nella tabella

<?
$data= date("d/m/y" ,time());
$new=$commento;
$new=str_replace("<?" ,"&lt;?" ,$new);
$new=str_replace("<?php" ,"&lt;?php" ,$new);
$new=str_replace("<" ,"&lt;" ,$new);
$new=str_replace("[a]" ,"<a href=" ,$new);
$new=str_replace("[/a]" ,">link</a>" ,$new);
$new=str_replace("[code]" ,"<p class=codice>" ,$new);
$new=str_replace("[/code]" ,"</p>" ,$new);
$new=str_replace("[b]" ,"<b>" ,$new);
$new=str_replace("[/b]" ,"</b>" ,$new);
$new = ereg_replace("
" ,"<br>" ,$new);
$dati=mysql_query("insert into commenti(data,id_art,tit_art,commento,utente) values ('$data','$idart','$titart','$new','$email')");
?>



Ti potrebbe interessare anche

commenta la notizia

Ci sono 5 commenti
nicola46
mi viene restituito questo errore
Fatal error: Call to a member function connessione() on a non-object in /home/content/p/i/e/miodominio/html/commenti2.php on line 2

come ha detto l'utente "fdfsdfds" mancano i dati per stabilire la connessione con il database.
Qualcuno sà mettere risoluzione al problema?
Grazie

Anonimo
complimenti per la spiegazione fatta abbastanza bene ma vorrei sapere qualche altro dettaglio dove devo mettere il form in una pagina apposita o in tutte le pagine e se lo devo mettere in una pagina apposita vorrei il nome della pagina e con quale estensione la pagina deve essere salvata html o php per quanto riguarda la tabella vorrei sapere se serve una Qery e quali valori mettere e come metterli

denialmask
Ciao, scusa, io non sono esperto di queste cose, ma avrei veramente bisogno di creare un piccolo spazio commenti (mi basta commento, nome e magari ora) per un sito o un blog (non di quelli preimpostati).
La spiegazione quà sopra sicuramente è fatta benissimo ma nella mia ignoranza ci ho capito ben poco...
Mi farebbe il piacere di spiegarmi bene, magari via mail o non lo so, che documenti devo creare, pagine o se mi basta dreamweaver per fare tutto?
Ringrazio in anticipo.
Dave
Ps. la mia mail è agenderossefvg@gmail.com