• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

1064 syntax fehler

Status
Für weitere Antworten geschlossen.

Dessp

Mitglied
Ich möchte einen eintrag in eine MYSQL Datenbank mit PHP machen
PHP:
<?php
include("confic.inc.php");
$res = mysql_query("select * from sss_seiten WHERE id = 1");
while ($line = mysql_fetch_assoc($res)) {
$text=$line[text];
$autor=$line[autor];
$title=$line[titel];
}
mysql_close();
if (isset($_GET[id])){
echo '<form action="edit.php?id='.$_GET[id].'" method="post"><input name="title" value="'.$title.'"> Title <br><textarea name="text" rows="10"cols="40">'.$text.' 

</textarea><br><input type="submit"></form>';
}
else{
echo '<form action="edit.php" method="post"><input name="title"> Title <br><textarea name="text" rows="10"cols="40"> </textarea><br><input type="submit"></form>';
}
?>
<?php
if (isset($_POST[text])){
include("confic.inc.php");
$nnn = "update sss_seiten set titel='" . $_POST[title] ."', autor='" . $_COOKIE[id] . "', text='" . $_POST[text] . "', where `id` = '" . $_GET[id] . "'";
mysql_query($nnn);
echo $nnn;
echo "<br>";
echo mysql_errno() . ": " . mysql_error() . "\n";
mysql_close();
}
  ?>
Als erstes die eingabe dan zum eintragen allerdings habe ich folgenen fehler
Code:
1064: 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

$nnn hiest
Code:
update sss_seiten set titel='Kontakt', autor='1', text='Sie reichen uns per E-mail
[email protected] 
natürlich können sie uns auch eine PM schicken Die/Die ansprechpartner ist/sind 
dessp ', where `id` = '1'
 
Zuletzt bearbeitet von einem Moderator:
Hallo, Threadersteller.

Mach bei deinen MySQL Vorgehen immer einen Check, ob es ausgeführt wurde, da du dies nicht machst.

Also so meine ich:
PHP:
mysql_xxxx() OR die(mysql_error());
So kannst du immer sehen, wo der Fehler ist.
Momentan habe ich nicht so viel Zeit, um den ganzen Code sehr genau anzuschauen.


MfG, matibaski

PS: In allen Superglobalen schreibt man in die Klammern Zeichen immer zwischen " oder ', ausser es sind Variablen.

Genauso bei mysql_fetch_assoc().
Also $line['irgendwas']
 
1. Korrigier mal die Arrays, da muessen ueberall Anfuehrungszeichen rein.
2. Niemals (!) Usereingaben direkt in eine DB eintragen. Vorher [phpnet]mysql_real_escape_string[/phpnet]
3. Solltest du den Query mal ein bisschen uebersichtlicher einruecken -> #php/QuakeNet Tutorial - MySQL-Querys einrücken
4. Hast du am Ende ein Komma zuviel, vor das where gehoert keins.
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben