Sitzplan für LAN-Seite
-
Hi,
ich will für eine LAN ein Sitzplan-Script erstellen. Sagen wir, die MySQL-Tabelle ist ganz einfach aufgebaut: sitz_id, sitz_spalte, sitz_zeile, sitz_nick
Nehmen wir an, die Tabelle ist bereits gefüllt. Das eigentliche Problem habe ich beim Anzeigen des Sitzplans. Der Sitzplan soll ja nicht einfach eine Tabelle sein, in der jede Zelle ein Sitzplatz ist, sondern soll auch funktionieren, wenn die Tabelle ungefähr so aussieht ("X" heißt, dass an der Stelle ein Platz ist):
1 2 3 4 5 6 7 8 9 0 1 2 ------------------------- 1| | | | | | | | | | | | | ------------------------- 2| |X|X| | |X|X| | |X|X| | ------------------------- 3| |X|X| | |X|X| | |X|X| | ------------------------- 4| |X|X| | |X|X| | |X|X| | ------------------------- 5| |X|X| | |[b]X[/b]|X| | |X|X| | ------------------------- 6| | | | | | | | | | | | | ------------------------- 7| | | | | | | | | | | | | ------------------------- 8| |X|X|X|X|X|X|X|X|X|X| | ------------------------- 9| |X|X|X|X|X|X|X|X|X|X| | ------------------------- 0| | | | | | | | | | | | | -------------------------
Das fette X hat dann z.B. in der DB die Werte Spalte 6 und Zeile 5.
Wie schreibe ich da am besten die Tabelle? Wenn es einfach eine ganz normale Tabelle wäre, in der jede Zelle irgendwie gefüllt ist, wäre es ja ganz leicht... aber wenn Lücken drin sind, weiß ich irgendwie nicht, wie ich das am besten mache...
Man könnte z.B. in jeder relevanten Zelle eine extrige Abfrage machen, "where sitz_spalte = ... and sitz_zeile = ...", oder am Anfang eine Abfrage die alle Zeilen zurückgibt, und das komplette Ergebnis in ein 2dimensionales Array speichern...
Werden aber beides nicht die performantesten Wege sein, und irgendwie steh ich grad aufm Schlauch
Wie würdet ihr das machen?
cu,
Neescher
-
Was ist ein "Sitzplan für LAN-Seite"
-
Wenn man sich für eine LAN-Party anmeldet bzw. das Geld überwiesen hat, kann man sich auf dem Sitzplan einen Platz reservieren. Da sieht man dann, wie das ganze von oben aussieht, wo man überall reservieren kann, wo schon belegt ist, usw...
z.B.:
http://www.lanweilig.de/start.php?open=Sitzplan&id=
http://www.lan-partyz.de/parties/Glueckstadt/sitzplan_gr.php3
http://www.gamersconvention.de/lan-sitzplan.php
http://www.rubikon-lan.de/phpSeats.php?cmd=show_seats
-
wenn es sich um so kleine Sachen handelt wäre es vielleicht am einfachsten, einfach ein PHP-Array zu nehmen und dieses dann direkt in der DB zu speichern (serialize/unserialize)
-
Also ich würde es in einem 2 dimensionalen Array speichern.