"Fehler in SQL Syntax" ... brauche Hilfe!

LittleWebby

Grünschnabel
Hallo.
Ich will einen Datensatz in eine MySQL Tabelle einfügen, der HTML Code enthält.
Mein Code dafür sieht folgendermaen aus:
PHP:
$mail = $HTTP_POST_VARS['email']; 
$name = $HTTP_POST_VARS['name']; 
$nachricht = $HTTP_POST_VARS['nachricht']; 
$datum = date("d.m"); 
$uhr = date("H:i"); 
$eintrag = "<table border='0' cellpadding='0' cellspacing='0' width='280' height='113' bgcolor='#00FFFF'> 
<tr> 
<td width='280' height='22' bgcolor='#66CCFF'><b><a href='mailto:$mail'>$name</a> schrieb am $datum um $uhr Uhr:</td> 
</tr> 
<tr> 
<td width='280' height='91'>$nachricht</td> 
</tr> 
</table>"; 
$dbname = "betty"; 
$dbhost = "localhost"; 
$dbuser = "root"; 
$dbpass = "******"; 
$connection= mysql_connect($dbhost,$dbuser,$dbpass); 
mysql_select_db($dbname,$connection); 
mysql_query("INSERT INTO shoutbox (eintrag) VALUES ('$eintrag')"); 
$res=mysql_query("SELECT * FROM shoutbox WHERE name='$name'"); 
while($row=mysql_fetch_array($res)){ 
echo "Email: ".$row['email']." ID: ".$row['id']."; 
}

Eigentlich ist der Bildschirm darauf hin nur weiß, doch als mysql_error zeigt es an:
"You have an error in your SQL syntax near <table border='0' cellpadding='0' cellspacing='0' width='280' height='113' bgcolo' at line 1"

Finde dort allerdings keinen Syntaxfehler (bin auch noch Anfänger).
Könnt ihr mir helfen?
 
sehe ich richtig, dass Du die komplette Tabelle (inkl. HTML) in die Datenbank packen willst? ...was soll das fuer ein Sinn machen?

um die ' - hochkommas in die Datenbank zu packen musst Du den STRING escapen ... mit zb. addcslashes($string) direkt im SQL Syntax.

Code:
INSERT INTO .... VALUES ('".addcslashes($eintrag)."')
 
Zuletzt bearbeitet:
Will damit eine Art Shoutbox basteln. Da ich mich leider nicht besonders auskenne, habe ich es erstmal so versucht, da ich es schon öfters so gesehen habe.
Bei mir kommt ein Fehler wenn ich es eintrage. Hier nochmal die Zeile:
PHP:
 mysql_query("INSERT INTO shoutbox (eintrag) VALUES ('".addcslashes($eintrag)."')");

Der Fehler:
Warning: Wrong parameter count for addcslashes() in .../html/eintragen.php on line 26
 
PHP:
if (!ini_get('magic_quotes_gpc')) {
    $eintrag = addslashes($eintrag);
}
Das addcslashes im SQL-Query dann einfach weglassen.
 
Vielen Dank :)
Der Code und die ' zu \' s zu machen haben geholfen.
Ich weiß, das Eintragen der ganzen Tabelle hört sich ziemlich schwachsinnig an, aber ich habe für mein Problem anders ertsmal keine Lösung gefunden.

Bye, LittleWebby
 

Neue Beiträge

Zurück