- syntax to use near 'WHERE id = '1'' at line 1 -
Gerch2003
- php
Hallo miteinand,
ich bekomme bei meinem php-script folgende Fehlermeldung und ich hab einfach keinen plan, was daran nicht stimmen soll:
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 'WHERE id = '1'' at line 1
<?
$host = "localhost";
$user = "root";
$password = "xxx";
$dbname = "xxx";
$tabelle = "xxx";
$id = '1';
$dbverbindung = mysql_connect ($host, $user, $password);
$dbanfrage = "SELECT * FROM $tabelle WHERE id = '$id'";
$res = mysql_db_query ($dbname, $dbanfrage, $dbverbindung);
while ($ausgabe = mysql_fetch_array ($res))
{
echo "
<form name='form1' method='post' action='$PHP_SELF'>
<table width=\"866\" bordercolor=\"#000000\" style=\"text-align:center;\" class=\"schrift\">
<tr>
<td rowspan=\"2\" bgcolor=\"#999999\">Produkt</td>
<td colspan=\"2\" bgcolor=\"#999999\">Zinssatz</td>
<td rowspan=\"2\" bgcolor=\"#999999\">Zinsbindung</td>
<td rowspan=\"2\" bgcolor=\"#999999\">Erläuterung</td>
</tr>
<tr>
<td bgcolor=\"#999999\">nominal</td>
<td bgcolor=\"#999999\">effektiv</td>
</tr>
<tr>
<td rowspan=\"5\" bgcolor=\"#FFFFFF\">Anuitätendarlehen</td>
</tr>
<tr>
<td bgcolor=\"#FFFFFF\"><input type='text' name='n1' value='$n1'></td>
<td bgcolor=\"#FFFFFF\"><input type='text' name='e1' value='$e1'></td>
<td bgcolor=\"#FFFFFF\">5 Jahre </td>
<td rowspan=\"4\" bgcolor=\"#FFFFFF\">Annuitätendarlehen; Anfangstilgung 1% p.a.; Kombination mit Förderdarlehen möglich;</td>
</tr>
<tr>
<td bgcolor=\"#FFFFFF\"><input type='text' name='n2' value='$n2'></td>
<td bgcolor=\"#FFFFFF\"><input type='text' name='e2' value='$e2'></td>
<td bgcolor=\"#FFFFFF\">10 Jahre </td>
</tr>
<tr>
<td bgcolor=\"#FFFFFF\"><input type='text' name='n3' value='$n3'></td>
<td bgcolor=\"#FFFFFF\"><input type='text' name='e3' value='$e3'></td>
<td bgcolor=\"#FFFFFF\">15 Jahre </td>
</tr>
<tr>
<td bgcolor=\"#FFFFFF\"><input type='text' name='n4' value='$n4'></td>
<td bgcolor=\"#FFFFFF\"><input type='text' name='e4' value='$e4'></td>
<td bgcolor=\"#FFFFFF\">20 Jahre </td>
</tr>
<tr>
<td bgcolor=\"#FFFFFF\">Annuitätendarlehen</td>
<td bgcolor=\"#FFFFFF\"><input type='text' name='n5' value='$n5'></td>
<td bgcolor=\"#FFFFFF\"><input type='text' name='e5' value='$e5'></td>
<td bgcolor=\"#FFFFFF\">15 Jahre </td>
<td bgcolor=\"#FFFFFF\">staatliches Baudarlehen (Bayern), Anfangstilgung 1% p.a.;</td>
</tr>
<tr>
<td bgcolor=\"#FFFFFF\">Annuitätendarlehen</td>
<td bgcolor=\"#FFFFFF\"><input type='text' name='n6' value='$n6'></td>
<td bgcolor=\"#FFFFFF\"><input type='text' name='e6' value='$e6'></td>
<td bgcolor=\"#FFFFFF\">10 Jahre </td>
<td bgcolor=\"#FFFFFF\">staatliches Baudarlehen (Bayern), Anfangstilgung 1% p.a.;</td>
</tr>
<tr>
<td rowspan=\"5\" bgcolor=\"#FFFFFF\"><img src=\"images/kfw_logo.jpg\" height=\"80\" width=\"150\" /></td>
<td bgcolor=\"#FFFFFF\"><input type='text' name='n7' value='$n7'></td>
<td bgcolor=\"#FFFFFF\"><input type='text' name='e7' value='$e7'></td>
<td bgcolor=\"#FFFFFF\">5 bis 10 Jahre </td>
<td bgcolor=\"#FFFFFF\">KfW Wohnungseigentumsprogramm; Laufzeit max. 35 Jahre; Max. 5 Jahre tilgungsfreie Anlaufjahre;</td>
</tr>
<tr>
<td bgcolor=\"#FFFFFF\"><input type='text' name='n8' value='$n8'></td>
<td bgcolor=\"#FFFFFF\"><input type='text' name='e8' value='$e8'></td>
<td bgcolor=\"#FFFFFF\">5 bis 10 Jahre </td>
<td bgcolor=\"#FFFFFF\">Wohnraum Modernisieren - Standard; Laufzeit max. 30 Jahre; Max. 5 Jahre tilgungsfreie Anlaufjahre;</td>
</tr>
<tr>
<td bgcolor=\"#FFFFFF\"><input type='text' name='n9' value='$n9'></td>
<td bgcolor=\"#FFFFFF\"><input type='text' name='e9' value='$e9'></td>
<td bgcolor=\"#FFFFFF\">5 bis 10 Jahre </td>
<td bgcolor=\"#FFFFFF\">Wohnraum Modernisieren - Öko Plus; Laufzeit max. 30 Jahre; Max. 5 Jahre tilgungsfreie Anlaufjahre;</td>
</tr>
<tr>
<td bgcolor=\"#FFFFFF\"><input type='text' name='n10' value='$n10'></td>
<td bgcolor=\"#FFFFFF\"><input type='text' name='e10' value='$e10'></td>
<td bgcolor=\"#FFFFFF\">10 Jahre </td>
<td bgcolor=\"#FFFFFF\"><img src=\"images/kfw_40.jpg\" height=\"60\" width=\"96\" /></td>
</tr>
<tr>
<td bgcolor=\"#FFFFFF\"><input type='text' name='n11' value='$n11'></td>
<td bgcolor=\"#FFFFFF\"><input type='text' name='e11' value='$e11'></td>
<td bgcolor=\"#FFFFFF\">10 Jahre </td>
<td bgcolor=\"#FFFFFF\"><img src=\"images/kfw_60.jpg\" height=\"60\" width=\"96\" /></td>
</tr>
<tr>
<td colspan=\"5\" bgcolor=\"#FFFFFF\" align=\"justify\">Bitte beachten Sie, dass die jeweiligen Zinssätze auf bestimmten Annahmen basieren und dass Ihr individueller Zinssatz ggf. von diesen Abweichen kann.<br />Stand: <input type='text' name='text' value='$text'></td>
</tr>
</table>
<br /><input type='submit' name='submit' value='Speichern'>
</form>";
}
if ($submit) {
$update = " UPDATE $tabelle SET n1='$n1', n2='$n2', n3='$n3', n4='$n4', n5='$n5', n6='$n6', n7='$n7', n8='$n8', n9='$n9', n10='$n10', n11='$n11', e1='$e1', e2='$e2', e3='$e3', e4='$e4', e5='$e5', e6='$e6', e7='$e7', e8='$e8', e9='$e9', e10='$e10', e11='$e11', text='$text', WHERE id = '$id'";
$updaten = mysql_query($update) or die(mysql_error());
if (!$updaten)
echo "Fehler aufgetreten!";
else
{
echo "Daten gespeichert!";
}
}
?>
Die Daten werden folglich auch nicht abgesendet.
Mit meinem Testscript ohne die riesige Tabelle hat es ganz ohne Probleme funktioniert!
Hello,
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 'WHERE id = '1'' at line 1
$dbanfrage = "SELECT * FROM $tabelle WHERE id = '$id'";
lass Dir die $dbanfrage an geeigneter Stelle (z.B. unter der Fehlermeldung) ausgeben:
echo "<p>" . htmlspecialchars($dbanfrage,ENT_QUOTES) . "</p>\r\n";
Liebe Grüße aus Syburg bei Dortmund
Tom vom Berg
echo $begrüßung;
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 'WHERE id = '1'' at line 1
Die Ursache für Syntaxfehler ist immer vor der bemängelten Stelle zu suchen.
Wie lautet das dazugehörige SQL-Statement (nicht der Code, der es zusammenbaut und HTML-Code interessiert an der Stelle auch nicht)?
$update = " UPDATE $tabelle SET n1='$n1', n2='$n2', n3='$n3', n4='$n4', n5='$n5', n6='$n6', n7='$n7', n8='$n8', n9='$n9', n10='$n10', n11='$n11', e1='$e1', e2='$e2', e3='$e3', e4='$e4', e5='$e5', e6='$e6', e7='$e7', e8='$e8', e9='$e9', e10='$e10', e11='$e11', text='$text', WHERE id = '$id'";
Was macht das Komma vor dem WHERE?
echo "$verabschiedung $name";
»
Was macht das Komma vor dem WHERE?
»
Danke, das Komma wars :-)
Hatt ich nicht gesehen. Ist durchs kopieren passiert.
Gruß