Finde den Fehler nicht MySQL/PHP

UnoDosTres

Erfahrenes Mitglied
Hallo,

habe folgende Abfrage:
PHP:
$eintrag = "UPDATE bestellung SET wunschdomain = '$domainwunsch', stadt1 = '$stadt1, stadt2 = '$stadt2', stadt3 = '$stadt3', stadt4 = '$stadt4', stadt5 = '$stadt5', zahlung = '$zahlungsart', bankname = '$bankname', bankleitzahl = '$bankleitzahl', kontonummer = '$kontonummer' WHERE id = '$id'";
$update = mysql_query($eintrag) or die(mysql_error());

Bekomme diesen Fehler:
Code:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'keine', stadt3 = 'keine', stadt4 = 'keine', stadt5 = 'keine', zahlung = 'Lastsch' at line 1

ich finde den Fehler aber nicht. Ich staarre schon 2 Stunden auf den Code und fende den Fehler nicht!
 
UnoDosTres hat gesagt.:
PHP:
$eintrag = "UPDATE bestellung SET wunschdomain = '$domainwunsch', stadt1 = '$stadt1, stadt2 = '$stadt2', stadt3 = '$stadt3', stadt4 = '$stadt4', stadt5 = '$stadt5', zahlung = '$zahlungsart', bankname = '$bankname', bankleitzahl = '$bankleitzahl', kontonummer = '$kontonummer' WHERE id = '$id'";

Probier mal folgendes:
PHP:
$eintrag = "UPDATE `bestellung` SET `wunschdomain` = '$domainwunsch', `stadt1` = '$stadt1', `stadt2` = '$stadt2', `stadt3` = '$stadt3', `stadt4` = '$stadt4', `stadt5` = '$stadt5', `zahlung` = '$zahlungsart', `bankname` = '$bankname', `bankleitzahl` = '$bankleitzahl', `kontonummer` = '$kontonummer' WHERE `id` = '$id'";

MfG hab1cht
 
Sonst probier mal Folgendes:
PHP:
<?php

	$query = '
		UPDATE
		        `bestellung`
		  SET
		        `wunschdomain` = "'.mysql_real_escape_string($domainwunsch).'",
		        `stadt1`       = "'.mysql_real_escape_string($stadt1).'",
		        `stadt2`       = "'.mysql_real_escape_string($stadt2).'",
		        `stadt3`       = "'.mysql_real_escape_string($stadt3).'",
		        `stadt4`       = "'.mysql_real_escape_string($stadt4).'",
		        `stadt5`       = "'.mysql_real_escape_string($stadt5).'",
		        `zahlung`      = "'.mysql_real_escape_string($zahlungsart).'",
		        `bankname`     = "'.mysql_real_escape_string($bankname).'",
		        `bankleitzahl` = "'.mysql_real_escape_string($bankleitzahl).'",
		        `kontonummer`  = "'.mysql_real_escape_string($kontonummer).'"
		  WHERE
		        `id` = "'.mysql_real_escape_string($id).'"
		'; 
	$result = mysql_query($query)
		or die(mysql_error());  

?>
Vielleicht solltest du – falls es nicht schon so ist – auch noch über die Nicht-Verwendung der so genannten Register Globals nachdenken, um die Herkunft der Werte genauer bestimmen zu können.
 
Oft reicht es aus die Abfrage zu strukturieren, sodass sie bei einem Fehler ausgegeben und manuell kontrolliert werden kann.
 
Zurück