Sie befinden sich hier im Forenarchiv von phpforum.de wenn Sie direkt ins Forum möchten, klicken Sie bitte hier. Zur Startseite kommen Sie hier.

Problem mit Update Statement

Hallo!

Ich habe ein Formular von dem mit POST der Inhalt mehrerer Textfelder an ein PHP-Skript uebergeben wird.
Wenn ich mir die Variable beim PHP-Skript ausgeben lasse, dann wird die auch korrekt ausgegeben.

Jetzt sollte eigentlich die Variable in ein Feld in einer Tabelle der Datenbank geschrieben werden, der Code dazu:

Code:                   In Zwischenablage kopieren (nur IE)
1">

Wenn ich jetzt in die Tabelle schau, dann ist im Feld telefon, eMail und website kein Inhalt, auch wenn vorher einer drin gestanden ist, wird das mit leerem Inhalt ueberschrieben!

Das heisst also mysql_num_rows() > 0, es wird also was getan, und auch im richtigen Datensatz!

Wenn ich mir $sql mit echo ausgeben lasse dann steht da folgendes:

Code:                   In Zwischenablage kopieren (nur IE)
2">

Die Inhalte der Variablen aus dem Formular werden also ins Statement uebernommen, aber seltsamerweise nicht in die Tabelle geschrieben.

Die Tabelle besteht aus mehreren Feldern, es sollen aber nur diese drei felder aktualisiert werden, aber wie gesagt, in die drei Felder wird leerer Inhalt geschrieben.

Die betroffenen Felder sind wie folgt definiert:

locationid | int(11) | NOT NULL | auto_increment
telefon | varchar(30) | NULL |
eMail | varchar(50) | NULL |
website | varchar(50) | NULL |

Es macht auch keinen unterschied ob die Felder telefon, eMail und website NULL oder NOT NULL sind, habe ich schon probiert....sitze schon den zweiten Tag an diesem Problem und habe noch keine Loesung gefunden!

Vielleicht weiss jemand Rat?

Gruss

Gizmo
Hier gehts zum Orginal Eintrag "Problem mit Update Statement" im Forum

Antworten

Hallo,

Hast Du versucht das ausgegebene UPDATE-Statement per Copy & Paste in phpMyAdmin als SQL Befehl einzugeben? Kommt hier eine Fehlermeldung oder wird der Datensatz überschrieben?

Ansonsten in phpMyAdmin ein Export der Tabellenstruktur machen, damit ich diese mal bei mir anlegen kann.

Wir finden in diesem Forum bestimmt eine Lösung für Dein Problem, nicht verzweifeln!


2.

Es muss irgendein Problem mit den Variablen $telefon_up, $eMail_up, und $website_up sein, weil wenn ich statt:

Code:                   In Zwischenablage kopieren (nur IE)
3">

das UPDATE-Statement

Code:                   In Zwischenablage kopieren (nur IE)
4">

eingebe, dann wird das sauber gespeichert, aber eigentlich ist das ja nichts anderes, nur dass ich den Inhalt von Hand eingetragen habe und nicht die Variable.

Bei einer anderen Tabelle, nur mit anderen Feldnamen und Variablennamen funktioniert das UPDATE-Statement seltsamerweise...


3.

Also jetzt versteh ich gar nichts mehr!

Ich habe jetzt zum Testen mal folgendes gemacht:
Ich hab jetzt mal die Sessionvariable $_SESSION[locationid] hergenommen und die Variable $telefon_up damit ersetzt:

Code:                   In Zwischenablage kopieren (nur IE)
5">

Jetzt wird im Datenfeld telefon brav 101 eingetragen...habe es auch mit anderen Sessionvariablen versucht, die werden alle brav eingetragen...

Wenn ich jetzt aber die Inhalte der Textfelder vom Formular in Sessionvariablen speicher und diese dann einsetze, dann wird wieder leerer Inhalt eingetragen!

Es muss also ein Problem mit den Textfeldern sein, aber keine Ahnung was fuer eins, das Formular sieht folgendermassen aus:

Code:                   In Zwischenablage kopieren (nur IE)
6">

Es macht kein Unterschied ob etwas in value steht oder nicht, habe ich schon ausprobiert!

Und wie gesagt, die Variable kommt bei daten_aendern.php an


Hier gehts zum Orginal Eintrag "Problem mit Update Statement" im Forum
 
phpforum.de | Impressum | Handy Bundles