l'apice INTERROMPE la query, nel senso che è il delimitatore di stringa e quindi il sw "pensa" che lì finisca la parola, altrimenti... come fa a sapere dove finisce?
Non bisognerebbe mai inserirei i dati $_POST direttamente nella query, fai qualcosa come (se usi MySQL):
Codice PHP:
$nome = mysql_real_escape_string($_POST['nome']);
$data = mysql_real_escape_string($_POST['data']);
$messaggio = mysql_real_escape_string($_POST['messaggio']);
$valutazione = mysql_real_escape_string($_POST['valutazione']);
$query = "INSERT INTO tabella (nome, data, messaggio ,valutazione) VALUES ('$nome', '$data', '$messaggio', '$valutazione')";