ich baue gerade so ein giveaway system, was ich mir schonmal auf ilch 1.1 erstellen lassen hab.
Jetzt bin ich gerade dabei das auslesen des Keys zum funktionieren zubekommen. Genauer gesagt, den ausgelesenen key zu löschen. Aber ich bekomm das nicht mit der query hin.
Unzwar muss ich die Zeile des Keys leer machen, quasi ersetzen mit einem leeren feld bzw nichts. Denn die sind in einer Spalte in der Datenbank mit Raute # getrennt.
Sprich: 123#1234#1235 etc.
Meine kentnisse sind leider noch zu schwach um aus der Wiki schlau zu werden.
Damit hab ich es zuerst versucht gehabt:
$randomkey = $keyset->getKeys(); $seperate = explode('#', $randomkey); $fields = [ 'keys' => '' ]; $this->db()->update('giveaway_keys') ->values($fields) ->where(['id' => $keyset->getId(), 'keys LIKE' => '%' . $seperate[0] . '#%']) ->execute(); return $keyset->getId();
Spricht aber nicht das richtige an, ersetzen ist glaub ich möglich wenn ich mich nicht täusche.
Danke schonmal in vorraus.
------------------------------
Edit:
Hab es jetzt hinbekommen. Unzwar hiermit:
$randomkey = $keyset->getKeys(); $seperate = explode('#', $randomkey); $anz = count($seperate); if ($anz == 1) { $sql = 'UPDATE `[prefix]_giveaway_keys` SET `keys` = REPLACE(`keys`, "' . $seperate[0] . '", "")'; return $this->db()->queryMulti($sql); } else { $sql = 'UPDATE `[prefix]_giveaway_keys` SET `keys` = REPLACE(`keys`, "' . $seperate[0] . '#", "")'; return $this->db()->queryMulti($sql); }
verwendete ilch Version: 2.1.x
Zuletzt modifiziert von madmax1337 am 30.04.2023 - 16:44:10