Hi ChackZz,
$_POST['name']=trim($_POST['name']);
$_POST['vorname']=trim($_POST['vorname']);
$_POST['nick']=trim($_POST['nick']);
$_POST['altersangabe']=trim($_POST['altersangabe']);
$_POST['kommentar']=trim($_POST['kommentar']);
//html entfernen
$_POST['name']=strip_tags($_POST['name']);
$_POST['vorname']=strip_tags($_POST['vorname']);
$_POST['nick']=strip_tags($_POST['nick']);
$_POST['altersangabe']=strip_tags($_POST['altersangabe']);
$_POST['kommentar']=strip_tags($_POST['kommentar']);
Du kannst übrigens auch schreiben:
$_POST['name'] = strip_tags(trim($_POST['name']));
Das kommt aufs Gleiche hinaus ;-) Die superglobalen Variablen $_POST und $_GET zu modifizieren halte ich übrigens nicht für empfehlenswert, da dies beim späteren Einarbeiten in das Script zu Verwirrungen führen kann. Hier wären lokale Variablen (z.B. $name) besser angebracht, alternativ bearbeitest du die Daten erst da, wo sie wirklich eingesetzt werden.
$sql="INSERT INTO $tabellenname (name, vorname, nick, altersangabe, kommentar, datum) values ('".$_POST['name']."', '".$_POST['vorname']."', '".$_POST['nick']."', '".$_POST['alterangabe']."', '".$_POST['kommentar']."', now())";
Was dein Problem ist, haben dir Martin und Snafu ja bereits gesagt - aber du hast noch etwas ganz anderes, nämlich eine dicke Sicherheitslücke. Dein Script ist in dieser Form anfällig für SQL-Injections.
Das hatte ich kürzlich erst erläutert, die anderen dort genannten Tipps kannst du teilweise auch beherzigen. Zwar verwendest du ein Affenformular, aber du gibst die $_POST-Werte ohne Verwendung von htmlspecialchars() o.ä. im HTML-Quellcode aus. Damit könntest du gegen XSS-Attacken anfällig sein, auch wenn du hier so wie es aussieht strip_tags() verwendet hast. Davon würde ich eher abraten, da strip_tags() sich u.U. recht merkwürdig verhält, wie du im Archiv nachlesen kannst.
Viele Grüße,
~ Dennis.