Es scheint wirklich nur eine denkblokade gewesen zu sein. Ich habe es jetzt mit dem Leiter (1 oder 0) geregelt und die möglichkeit in 2 Gruppen gleichzeitig zu sein ausgeschlossen. Dadurch war das ganze nun etwas einfacher zu lösen.
Alles funktioniert wunderbar, bis auf das auslesen aus der Datenbank. Diesmal habe ich aber nicht das Problem, das er nicht die zusammengehörigen Datensätze erkennt, sondern, dass er sie wild durcheinander anzeigt und ich nicht weis, wie ich sie ordnen kann.
Ich habe schon überlegt wie man das mit arrays und dem sort befehl machen könnte, dabei kam bei mir aber nur müll heraus. Hier mal der Quelltext des Scribtes, welche die Daten ausliest und anzeigt:
PHP-Code:
//Ersteinmal werden alle Tabellenspalten bezeichnet
<body>
<div align="center">
<table border="1" bordercolor="#000000" cellpadding="5" cellspacing="0">
<tr bgcolor="#CCCCCC">
<td>ID</td>
<td>Name</td>
<td>Trupp</td>
<td>E-Mail Adresse</td>
<td> </td>
</tr>
<?PHP
//Die Datenbank soll mit all ihren Spalten gelesen werden
$res = mysql_query('select *
from userdb
order by trupp desc');
echo mysql_error();
//In einer Schleife werden alle Datensätze der reihe nach durchforstet/ausgegeben
while ($row = mysql_fetch_array($res)){
//Ersteinmal alles klein Schreiben, damit keine komplikationen auftreten
$trupp = strtolower(substr($row["trupp"], 0, 6));
//Leiter werden gesondert behandelt, weil sie nicht als mitglieder der einzelnen Gruppensollen
If ($row["leiter"]) { $trupp = "Leiter";}
//Sobald sich die Art des Trupps ändert (Gruppen untereinander oder Leiter) ändert sich die Überschrift
If ($truppcheck != $trupp) {
echo "<tr bgcolor=#CCCCCC>
<td colspan=5>" . substr($trupp, 0, 6) . "</td>
</tr>";
}
$truppcheck = strtolower(substr("$trupp", 0, 6));
$usrid = $row["usrid"];
//Die Daten werden in einer Tabelle ausgegeben
echo "<tr>";
printf("<td>%s</td>n",
$row["usrid"]);
printf("<td><a href="detail.php?usrid=$usrid">%s, ",
$row["vorname"]);
printf("%s</a></td>n",
$row["nachname"]);
printf("<td>%s</td>n",
$row["trupp"]);
printf("<td>%s</td>n",
$row["leiter"]);
printf("<td>%s</td>n",
$row["email"]);
printf("<td><a href=edit.php?usrid=%s><img src=pics/button_edit.png border=0 alt=Editieren></a> n",
$row["usrid"]);
printf("<a href=del.php?usrid=%s><img src=pics/button_drop.png border=0 alt=Löschen></a></td>n",
$row["usrid"]);
echo "</tr>";
}
?>
Hier das ganze nochmal als Anschauungs Material.
Ich hoffe, das ihr mir vieleicht weiterhelfen könnt.
Gruß
Sven
P.s.: Habt keine Scheu euch einfach einmal einzutragen um es zu testen.