MySQL - 5.0.51a-24+lenny3
Hallo,
ich habe mir ein kleines Script gebastelt, wo mir angezigt wird, welcher Spieler einen neuen Rang erreicht hat. Das prüfen der Daten funktioniert, jedoch habe ich ein Problem mit dem Update der Daten. Wenn ein Spieler einen neuen Rang erreicht hat, soll das Datum sowie der neue Rang in der Datenbank gespeichert werden. Dafür habe ich 2 neue Spalten angelegt mrank und mtime.
mrank = neuer Rang, besteht aus eine zahl 0-21
mtime = Aktuelles Datum und Zeit
Mein Problem ist, das ich mehrere fast gleiche Daten habe.
Von jedem Spieler stehen immer 7 Datensätze drin, für jeden Tag 1 Datensatz.
Die ich nur vom timestamp und der Spieler ID unterscheiden kann.
Wenn ich das Update ausführe, werden in allen 7 Datensätze, der neue rang und das Datum gespeichert. Ich möchte aber gerne, das es nur im Aktuellem Tag gespeichert wird.(Aktuelle Timestamp) Dafür habe ich in der Where Klause die Aktuelle Timestamp mit angegeben. Trotzdem werden alle 7 Datensätze beschrieben. Was mache ich falsch?
So sieht mein Update Script aus:
$this->db->setQuery("UPDATE jos_bf2_leaderboard Set mrank = '".$array[4]."', mtime = '".$date."'
WHERE timestamp = '".$todday."' OR bf2id = '".$bid."'");
$todday = Aktuelle Timestamp
$bid = Spieler ID
Ich hoffe ihr könnt mir bei meinem kleinem Problem helfen.
Vielen Dank
mfg
Marco