steckl: MYSQL Fehler "Data truncated"

Beitrag lesen

Hi,

$dbanfrage = 'INSERT into formular(id,titel,termin,arcgis,teilnehm,name,einricht,str,plz,ort,tel,fax,email) VALUES ("0","'.htmlspecialchars($_POST[titel]).'","'.htmlspecialchars($POST[termin]).'","'.htmlspecialchars($_POST['arcgis']).'","'.htmlspecialchars($_POST['teilnehm']).'","'.htmlspecialchars($_POST['name']).'","'.htmlspecialchars($_POST['einricht']).'","'.htmlspecialchars($_POST['str']).'","'.htmlspecialchars($_POST['plz']).'","'.htmlspecialchars($_POST['ort']).'","'.htmlspecialchars($_POST['tel']).'","'.htmlspecialchars($_POST['fax']).'","'.htmlspecialchars($_POST[email]).'")';
$fehler = mysql_query($dbanfrage,$sarah) or die(mysql_error());

Warum verwendest du hier htmlspecialchars? Diese Funktion ist für die Ausgabe von HTML-Code gedacht. Was du verwenden solltest ist mysql_real_escape_string. Das schützt dich dann auch vor SQL-Injektions.

Außerdem wäre dir besser zu helfen, wenn du den Inhalt von $dbanfrage mal ausgeben lassen und hier posten würdest, da das Problem ja offensichtlich an mySql und nicht an PHP liegt.

Habe termin so definiert in meiner Datenbank/Tabelle:
termin enum('13-10-2004','b')

Das heißt, du kannst nur die Werte '13-10-2004' und 'b' in dieses Feld schreiben. Für Datumsangaben gibt es in mySql den Datentyp DATE.
Das ist wohl der Fehler.

mfG,
steckl