anpera.net https://anpera.homeip.net/phpbb3/ |
|
MySQL oder LogD spinnt rum https://anpera.homeip.net/phpbb3/viewtopic.php?f=34&t=2943 |
Seite 1 von 1 |
Autor: | Iridion [ Do 28 Sep, 2006 09:27 ] |
Betreff des Beitrags: | MySQL oder LogD spinnt rum |
Moin Leute, ich hab im Zuge der Umstellung unseres Servers auf einen reinen RP-Server ein kleines Script geschrieben mit dem die User eine Einlassbitte schreiben können, nachdem sie sich angemeldet haben, jedoch noch nicht durch einen Admin/Mod zugelassen wurden. An dieser Stelle müssen die Spieler eine RP-Gerechte Einlassbitte verfassen, als auch den Regeln zustimmen. Damit die Spieler nun nicht mehrfach eine Einlassbitte schreiben und uns damit nerven könnten habe ich ein neues Feld in der "accounts" angelegt, wo ich dann nach Zustimmung einen Unix_Timestamp speichern will. Diesen Frage ich bei einem neuerlichen Versuch ein Bitte zu schreiben ab und wenn der belegt ist, steht fest das der User bereits eine Bitte geschrieben hat. Das Problem was nun besteht ist, das er unten stehendes SQL-Statement einfach nicht ausführt. Hat jemand von Euch schon mal ein ähnliches Problem gehabt? Oder besser vielleicht eine Lösung? Ich bekomme auch keinerlei Fehlermeldung die mir Aufschluss über das Problem geben könnte. $this->bbcode_second_pass_code('', ' $sql = "UPDATE accounts SET accept_rules=".time()." WHERE acctid='".$session['user']['acctid']."'"; db_query($sql); ') Falls ihr das ganze Script sehen wollt, sagt bitte Bescheid. TIA, Iridion |
Autor: | Iridion [ Do 28 Sep, 2006 10:08 ] |
Betreff des Beitrags: | |
Hmm ich habs selbst gelöst... sorry für die Unannehmlichkeit. Ich habs jetzt einfach in die User Session geschrieben: $session[user][accept_rules]=date("Y-m-d H:i:s"); Trotzdem danke ![]() |
Autor: | Eliwood [ Do 28 Sep, 2006 16:19 ] |
Betreff des Beitrags: | |
$sql = "UPDATE accounts SET accept_rules=".time()." WHERE acctid='".$session['user']['acctid']."'"; db_query($sql); Du fütterst ein Format "Y-m-d h:i:s" mit einer einzigen Zahl - einem timestamp. (Gut, könnte eigentlich klappen). Besser wäre es allerdings so: Zitat: $sql = "UPDATE accounts SET accept_rules=NOW() WHERE acctid='".$session['user']['acctid']."'";
db_query($sql); Des weiteren: Ja, die Symtome sind logisch. Du schreibst etwas in die Datenbank - Die Aktuelle Session weiss aber nicht, dass du da etwas geändert hast und überschreibt den neuen Wert wieder mit dem alten aus der Session. |
Autor: | Iridion [ Do 28 Sep, 2006 16:28 ] |
Betreff des Beitrags: | |
Ja eigentlich hätte das so funktionieren sollen (zumindest hats das in phpmyadmin) aber über logd hats dann auch wieder nicht geklappt aus dem von Dir genannten Grund... aber gut... nu klappt es ja ![]() |
Seite 1 von 1 | Alle Zeiten sind UTC + 1 Stunde |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |