HTML Tabellen generieren

A

andyK

Hallo,

ich bin mir jetzt nicht ganz sicher, ob das hier her passt, aber ich habe folgendes
Problem:

In meiner Administration habe ich 24 Punkte, die ich einstellen kann.
Für jeden einzelnen Bereich habe ich einen Link.
Nun will ich kein Menü auf der linken Seite machen, sondern alles im Header
Bereich.

Das wär jetzt kein Problem (eine Tabelle mit drei Zeilen und acht Spalten und
darin die Grafiken) wenn ich nicht mehrere Admins anlegen könnte, die
nur auf bestimmte Bereiche zugreifen können.

Beispiel:
Der "Oberadmin" hat zugriff auf alle 24 Bereiche. Der 2nd Admin hat nur Zugriff
auf 14 Bereiche.
Wie kann ich das darstellungstechnisch am besten lösen?

Beim "Oberadmin" wären alle 24 Felder gefüllt.
Beim zweiten aber nur 14, vielleicht der erste und der zweite BEreich,
dann der 6., der 8. usw.

Das Programm müsste irgendwie auslesen, wieviel Bereiche bei dem Admin
auf TRUE sind (also 1) und dementsprechend eine HTML Tabelle generieren.
Aber wie stell ich das an?

Ich will auch nicht unbedingt, dass ein anderer Admin sieht, dass es noch mehr
Bereiche gibt, wo man Einstellungen tätigen kann.
Es muss letztendlich so aussehen, als ob es nur die Bereiche gibt, wo er auch
was dran ändern kann.

Habt ihr da ne Idee?

Thanks,

Andy

ACHSO:
Bisher hab ich das so, dass die 24 Bereiche (Links) fest definiert sind
und die Funktion jeden einzelnen mit "if TRUE" überprüft, und dann, wenn ja,
den Link ausgibt.
 
Zuletzt bearbeitet von einem Moderator:
Du erstellst eine Tabelle, hast pro "Funktion" eine Zeile in der Tabelle zur verfügung. Bevor du diese ausgibst, checkst du einfach, ob der betreffende User das Recht hat dieses Zeile zu sehen. Wenn er das nicht hat, echost du die Zeile einfach nicht.

Wie hast du denn die Userverwaltung und Rechtezuweisung gelöst ? Weil jenachdem wie die gelöst ist, ist dass dann einfacher oder schwerer.
 
Wie hast du denn die Userverwaltung und Rechtezuweisung gelöst ? Weil jenachdem wie die gelöst ist, ist dass dann einfacher oder schwerer.
Ich habe ein Bereich, in dem ich die Rechte für die Admins via checkboxen
auswählen kann.
Da mach ich dann halt überall, wo ich denke, dass da auch ein anderer
"rumpfuschen" kann, ein Häckchen und in der Datenbank kommt an dieser
Stelle dann entweder eine 1 oder eben eine 0.

Dann hab ich die Funktion "getmenu", die mehrere dieser Zeilen hier hat:



PHP:
if($row['forum'] == 1) $menu .= "<tr><TD noWrap class=menu_cat><a href=\"forum.php\" title=\""._mtforum."\">"._mforum."</a></TD></tr>";

So überprüfe ich, ob der Admin das Recht hat, diesen Bereich zu betreten
oder nicht. Wenn nicht, wird garnichts ausgegeben.
Nur so, wie das oben gelöst ist, reiht er mir die Bereiche untereinander
auf. Ist erstmal auch so gewollt, weil 24 nebeneinander sprengt den Rahmen
meines 17" Monitors. :rolleyes:

Aber nach der Art, lässt er die Bereiche einfach aus und macht mit dem nächsten
weiter.
 
Hallo Andy!

Ich habe das z.b. bei einer Linkliste von mir so gelöst, das ich aus der meiner Datenbank alle Kategorien auslese, das ganze in einer Schleife ausgeben lasse, und in dieser Schleife läuft ein Zähler mit, der mir einen Wert hochzählt. Und wenn dieser Wert das von mir angegebene Maximum erreicht hat, dann schliesst er die Zeile und fängt eine neue an. Ausserdem wird der Zähler wieder zurückgesetzt.
Aussehen tut das ganze bei mir ca. so: (unwichtige Sachen habe ich gelöscht)


PHP:
@$outcome=mysql_query("select * from linkexcatalog where parentid='$catid' order by catalogid");
	require("../news/admin/failure.php");
	?>
	<table align=center>
	<tr>
	<?

	$zaehler=1;
	while ($access=mysql_fetch_array($outcome))
		{
        	$catalogid=$access["catalogid"];
			$catalogname=$access["catalogname"];
			$description=$access["description"];
		echo "
		<td width=200 valign=top>
			<table border=0>
				<tr valign=top>
					<td>
						<IMG height=10 src=\"images/punkt.gif\" width=10>
					</td>
					<td>
						<A href=\"index.php?action=links&zeigen=links&catid=$catalogid\"><b>".$catalogname."</b></A>
					</td>
				</tr>
				<tr>
					<td>&nbsp;</td>
					<td>
						".$description."
						<br><br>
					</td>
				</tr>
			</table>";
	
	if ($zaehler=="1") 
		{
		echo "</td>";
		$zaehler++;	
		}
	
	else {
		echo "</td></tr><tr>";
		$zaehler=1;
		}

}

In diesem Fall macht er mir eine Tabelle mit 2 Spalten.
Wenns dich interessiert kannst du dir das Ergebnis anschauen unter:

http://www.bergrettungsdienst.molln.net/index.php?action=links&zeigen=kategorie&catid=2

mfg Hoizwurm
 
Zuletzt bearbeitet:
Zurück