Zitat (Slayer: 08.06.2005, 22:50)
Kann mein ip-Feld aber auch VARCHAR sein und PRIMARY?
Aber was ändert sich da zu meinem Code großartig von dem Aufwand her?
if(mysql_num_rows($user_select) == 1)
{
mysql_query("UPDATE user_online SET ablauf = '".(time()+$zeitspanne)."' WHERE ip = '$ip'");
}
Oder ersetzt dein Beispiel auch den Fall, falls nichts vorhanden ist? Also noch folgendes:
mysql_query("INSERT INTO user_online (ip, ablauf) VALUES ('$ip', '".(time()+$zeitspanne)."')");
<{POST_SNAPBACK}>
Klar kann VARCHAR PRIMARY sein... ich persönlich empfehle es aber nicht, da die Indizierung für PRIMARY sonst zu gross und zu langsam wird (bei UPDATE, INSERT, REPLACE und WHERE Abfragen).
Wie schon geschrieben... vom aufwand: Alle die Zeilen in meinem Post können durch die drei von mir ersetzt werden. Denn das REPLACE fungiert als INSERT und UPDATE gleichzeitig wenn eine PRIMARY Spalte im SET verwendet wird. Die if Abfrage die du per PHP machst, macht quasi das REPLACE INTO ja schon. Das prüft ja ob bereits einer existiert mit der IP. Wenn ja löscht er ihn voll automatisch ohne das du dich drum kümmern musst.
Dieser Beitrag wurde von Yalamand bearbeitet: 08. Juni 2005 - 21:54

Hilfe
Neues Thema
Antworten

Nach oben


