Die Datenbank verbingung und die Datenbank auswahl ist in einer anderen Datei und mit include eingefügt.
Wenn ich das Script jetzt ausführe, überschreibt das Programm nicht den Vorherigen Eintrag sondern macht einen „klon“ vom „falschen“ Beitrag und erstellt dann ein Kopie mit dem richtigen Inhalt:
Somit belibt nach dem Editieren noch ein alter Beitrag übrig.
Und noch was: Ich ändere mit der Abfrage NUR 2 Inhalt und noch 3 lasse ich übrig!
wenn „id“ durch auto_increment läuft, ist es klar, denn dann will SQL jedes mal ‚nen neuen eintrag erstellen.
lies‘ das lieber mit einem array heraus.
außerdem ist das SQL total falsch.
wenn schon, muss es so sein:
[php]
<?php
$sql = "UPDATE blog_beitrag SET titel = '" . $_POST["titel"] . "',
beitrag = '" .$_POST["text"] ." ' WHERE id = '" . $_POST["id"]. "' ";
?>
Stimmt, id läuft auf auto_increment aber was kann ich jetzt dagegen tun, also das es einen neuen Auftrag erstellt?
Und wie soll ich es aus einem Array rauslesen? Mein schlaues Buch sagt mir ich soll es so machen. Und phpmyadmin sagt das sql ist richtig mach muss mein where keine hochkommas machen!
Hm wenns keine anderen Lösungen gibt, Selectest du die ID Spalte, Und machst dann eine Schleife. in die kommt dann dein Update Query mit Vorheriger If Abfrage ob du bei der richtigen ID bist. Das Query musst du dann noch so verändern, das du die ID auf die setzt, die grade in der Schleife ist.
Ich hoffe das war einigermaßen verständlich.
also ich kann es nicht nachstellen. Es wäre auch etwas sehr komisch, wenn beim UPDATE-Befehl plötzlich das autoincrement zuschlägt. Dann könnte man in Tabellen mit autoincrement nie wieder Änderungen machen.
Ich tippe als Ursache einen anderen Fehler … da würden natürlich sinnvolle DEBUG-Ausgaben helfen, z.B. ob tatsächlich der gewünschte Befehl so zusammengebaut wurde.
Ansonsten eignet sich die Programmierung natürlich hervorragend zum Hacken … Stichwort SQL-Injection.
Ok, ich habe den Fehler gefunden: Diese Datei wurde garnicht aufgerufen sondern eine andere: Deshalb wurden die Sachen nicht ausgeführt sondern eine neue Erstellt.
Achja XraYSoLo, was laberst du für einen Scheiß? Das Ding geht auch mit auto_increment -du kannst ja super SQL, gel:-D
es war ein rat, bei dem ich dich nicht gezwungen hatte, ihn anzunehmen. etweder man befolgt ihn, oder man lässt es bleiben, so einfach ist das. du hat hier gefragt und erwartet, dass es beantwortet wird. keiner hat dir befohlen hier was zu posten.
wenn du richtig gelesen hättest (wohl gemerkt: möglichkeitsform), wüsstest du, dass ich nicht gesagt habe, dass es mit AI nicht geht, aber das wird dir ja in deiner überaus großen intelligenz sicherlich auch nicht entfallen sein.
noch was: meine fähigkeiten für SQL reichen meinen bedürfnissen nach aus, nur wenn man sich bei einer einfachen abfrage anschickt, sowas zu schreiben und dann noch drauf zu beharren, dass es stimmt, dann frag’ ich mich ganz ehrlich, was in deinem angeblich schlauen buch drinsteht. und noch viel mehr, was für einer das ist, der das liest.