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.

[PHP][MySQL] MySQL speichert falsch!?

Also ich hab ein für mich unerklärliches Problem.
Ich habe leider nicht bemerkt, seit wann es auftritt.
Habe daran gedacht, dass es evtl. seit nem Serverumzug sein könnte.

Aber auf Serverseite habe ich eigentlich auch nix finden können. Ich selbs administriere die Server.

Also um das Problem mal kurz zu erläutern poste ich einfach ne Unterhaltung mit nem Freund von mir, den ich im ICQ um Rat gebeten habe:



Zitat:

Isch2k (11:56 AM) :
auf meiner seite hab ich ja sonen fragenkatalog.
ich wenn jemand ne frage beantwortet wird sie in der DB gespeichert.naja whatever.
ich lösche also erst die (falls das gemacht wurde) bereits beantwortete frage!
Isch2k (11:56 AM) :
mysql_query("DELETE FROM $db_user_antworten WHERE user_antworten_user_id=$onlineID AND user_antworten_fragen_id=$fragen_id") or die("DELETE Error 1");
Isch2k (11:56 AM) :
gleich im anschluss speichere ich die neue antwort
Isch2k (11:56 AM) :
mysql_query("INSERT INTO $db_user_antworten (user_antworten_user_id,user_antworten_user_ip,user_antworten_user_date,user_antworten_fragen_id,user_antworten_antwort) VALUES ('$onlineID','$onlineIP','$onlineDate','$fragen_id','$antwort')") or die("INSERT ERROR ($db_user_antworten)");
Isch2k (11:57 AM) :
so jetzt das komische...
Isch2k (11:59 AM) :
seit neustem wird
1) $antwort NICHT gespeichert (aber anzeigen kann ich ihn vor und nach dem sql statement. aber in der DB is das feld leer!
2) wenn ich das DELETE wegnehme werden 2 DS gespeichert... einer mit der antwort und einer ohne
Isch2k (12:00 PM) :
ne idee? :p
gizmo (12:00 PM) :
öh
gizmo (12:00 PM) :
ne kein plan
Isch2k (12:10 PM) :
das is so komisch.



nochmal der Code bzw das MySQL-Statement:
[PHP]
mysql_query("DELETE FROM $db_user_antworten WHERE user_antworten_user_id=$onlineID AND user_antworten_fragen_id=$fragen_id") or die("DELETE Error 1");
mysql_query("INSERT INTO $db_user_antworten (user_antworten_user_id,user_antworten_user_ip,user_antworten_user_date,user_antworten_fragen_id,user_antworten_antwort) VALUES ('$onlineID','$onlineIP','$onlineDate','$fragen_id','$antwort')") or die("INSERT ERROR ($db_user_antworten)");
[/PHP]
Hier gehts zum Orginal Eintrag "[PHP][MySQL] MySQL speichert falsch!?" im Forum

Antworten

„wenn ich das DELETE wegnehme werden 2 DS gespeichert... einer mit der antwort und einer ohne“

Da wird wohl dein Script irgendwie 2x ausgeführt.
1. Einmal korrekt: löschen, korrekter INSERT.
2. Dann noch mal: löschen (also den korrekten Datensatz von 1.), die übergebene Variable $antwort gibt es nach nochmaligem Aufruf des Scriptes nicht mehr bzw. ist leer, Datensatz anlegen mit $antwort=leer

PS: an MySQL liegts ganz sicher nicht ;)


Hier gehts zum Orginal Eintrag "[PHP][MySQL] MySQL speichert falsch!?" im Forum
 
phpforum.de | Impressum | Handy Bundles