Hallo,
habe das Problem, dass ich eine neue Zeile zu einer Tabelle (housekeys) hinzufügen will. Damit die Zeilen nach Entstehungszeitpunkt sortiert bleiben, habe ich auch eine Sortiervariable (housecounter), die bei jedem Hinzufügen einer neuen Zeile für "houseid" eingesetzt und dann um 1 erhöht werden soll, für die nächste neue Zeile.
Mein Code, den ich bis jetzt dazu hab, lautet:
$sql = "INSERT INTO ".db_prefix("housekeys")." (ownerid, houseid, housecounter, housename, location) VALUES (".$session[user][acctid].", SELECT MAX(housecounter) FROM ".db_prefix("housekeys").", SELECT MAX(housecounter) FROM ".db_prefix("housekeys").", , ".get_module_pref("village").")";
$sql = "UPDATE " .db_prefix("housekeys"). " SET housecounter = housecounter+1";
db_query($sql);
Das Problem: es kommt nichts in der Datenbank an. Gebe ich ihm über ein Formular die benötigten Daten (die werden weiter oben definiert), so werden diese nicht in die Tabelle eingetragen. Mit einer früheren Codeversion werden die Daten zwar eingetragen, sind aber weiterhin unsortiert, weil da noch nicht "housecounter" existiert. Der alte Code:
$sql = "INSERT INTO ".db_prefix("housekeys")." (ownerid, houseid, housename, location) VALUES (".$session[user][acctid].", ".$session[user][acctid].", , ".get_module_pref("village").")";
db_query($sql);
Wo liegt nun mein Fehler, dass das nicht in der Datenbank erscheint/gibt es eine einfacherere Lösung, die Daten nach dem Eintragungszeitpunkt sortiert zu halten?