Mailinglisten-Archive |
Hallo, die Frage wurde zwar in ähnlicher Form schon behandelt, aber hat für mich keine verwendbare Lösung gebracht, deswegen ein neuer Versuch: Ich möchte eine Benutzerdatenbank verwalten, in der neben den Benutzerdaten auch eine IP-Adresse gespeichert wird. Es kann allerdings durchaus sein, dass eine IP gelöscht und für einen anderen Benutzer neu vergeben werden soll. Wenn ich eine Reihe von IPs habe, entstehen also Lücken, die neu vergeben werden sollen. Da ich mit einem Klasse-C Netzwerk arbeite, habe ich nur 254 IPs zur Verfügung, die ziemlich rationell vergeben werden sollen. Meine Frage: Wie komme ich an die nächstbeste Lücke, wenn ich einen neue IP vegeben will? Und welches ist die schnellste Möglichkeit? SELECT MAX(ip) ... fällt schon mal raus, da die Lücken nicht berücksichtigt werden. Ich könnte natürlich alle IPs erst mal in ein Array laden und dann die IPs durchlaufen lassen und überprüfen, ob die gerade aktuelle IP schon im Array vorkommt, also vergeben ist. Aber ist das die schnellste und einfachste Möglichkeit? Auch wenn ich keine IPs habe, sondern einfache Ganzzahlen, die aber beschränkt sind auf eine vorher festgelegte Anzahl, wie finde ich da die Lücken? Die Routine auf IPs umzuschreiben dürfte kein Problem sein, aber ein Lösungsansatz wäre ganz praktisch. Hat jemand eine Idee? Gruss, Ithamar Garbe
php::bar PHP Wiki - Listenarchive