Frank (no reg): MySQL daten per Formular ändern

Beitrag lesen

Klappt nicht hieß, er übernimmt einfach nicht die Änderungen die ich in einem jeweiligen Formular eingetragen habe in die Datenbank.

Selbst dafür gibt es noch genügend "Fehler"-Varianten, aber meine allwissende Glaskugel hat heute keine Lust mehr.

Wie wär's damit:

  • gewährleiste durch Kontrollausgaben, dass dein Script den entsprechenden Code auch wirklich ausführt (z.b. innerhalb von if($_POST['submit']) ein echo "<h3>hello, here I am</h3>"
  • zwischen-speichere das SQL Statement für das Update in eine variable
  • gib die Variable in einer Kontrollausgabe (echo) aus
  • überzeuge dich von der syntaktischen Korrektheit des SQLs
  • probiere selbiges (Copy & Paste lässt grüssen) z.b. in PHPMyAdmin aus und schau was passiert und überzeue dich von der semantischen Korrektheit
  • behebe die Fehler
  • probiere das ganze nochmal
  • wenn du den Fehler nicht finden kannst, poste folgende Sachen hier
      - Tabellenstruktur
      - (alle) Daten in der Tabelle vor dem Update-Versuch
      - das _genaue_ SQL Statement, welches an die DB geschickt wurde
      - (alle) Daten in der Tabelle nach dem Update-Versuch

Stand jetzt ist aber, dass er die erste ID in der DB (welche mit 1 beginnt) mit einer 0 = NULL überschreibt.

Da ist schonmal mindestens ein grober Fehler drin, ID sollte eindeutig und unveränderlich sein, NULL sollte nicht erlaubt sein.

  
UPDATE garant SET handwerker = 'abc', einheit = 'def', id = ''  

tut genau was?

  • gar nichts
  • gibt einen Fehler / Ausnahme
  • setzt alle 100000 Records in der Tabelle auf exakt dieselben Werte 'abc', 'def' und '' (und wenn ja, warum?)

Ciao, Frank