Tabellenmodul für gruppierte Elemente
Verfasst: Mi 28. Feb 2007, 14:06
Hallo,
wie im Modul-Requests kurz diskutiert habe ich nach einer Lösung gesucht, eine Tabelle zu erstellen in der, geordnet nach Gruppen, Mitarbeiter aufgelistet werden. Nachdem ich mich von der Idee, alles automatisiert im Edit ablaufen zu lassen, verabschiedet habe, lassen sich Anzahl der Gruppen und Anzahl der Elemente in den Gruppen jetzt in der Konfiguration einstellen.
Einschränkung: Die Anzahl der Elemente ist erstmal auf 100 beschränkt, kann aber durch eine Erweiterung der Lookup-Tabelle aufgestockt werden.
Im Edit wird dann eine entsprechende Tabelle ausgegeben, die mit Inhalten gefüllt werden kann. Es gibt noch keine Demo davon (zumindest nicht online), aber das ganze sieht für 3 Gruppen mit je 4 Personen in 2 Spalten ungefähr so aus:
Gruppenüberschrift 1
Bild | Titel / Text | Bild | Titel / Text
Bild | Titel / Text | Bild | Titel / Text
Gruppenüberschrift 2
Bild | Titel / Text | Bild | Titel / Text
Bild | Titel / Text | Bild | Titel / Text
Gruppenüberschrift 3
Bild | Titel / Text | Bild | Titel / Text
Bild | Titel / Text | Bild | Titel / Text
Input:
Output
Vielleicht braucht es nochmal jemand, mit einigen Änderungen ist es sicherlich recht universell einsetzbar.
Grüße
_Marc
wie im Modul-Requests kurz diskutiert habe ich nach einer Lösung gesucht, eine Tabelle zu erstellen in der, geordnet nach Gruppen, Mitarbeiter aufgelistet werden. Nachdem ich mich von der Idee, alles automatisiert im Edit ablaufen zu lassen, verabschiedet habe, lassen sich Anzahl der Gruppen und Anzahl der Elemente in den Gruppen jetzt in der Konfiguration einstellen.
Einschränkung: Die Anzahl der Elemente ist erstmal auf 100 beschränkt, kann aber durch eine Erweiterung der Lookup-Tabelle aufgestockt werden.
Im Edit wird dann eine entsprechende Tabelle ausgegeben, die mit Inhalten gefüllt werden kann. Es gibt noch keine Demo davon (zumindest nicht online), aber das ganze sieht für 3 Gruppen mit je 4 Personen in 2 Spalten ungefähr so aus:
Gruppenüberschrift 1
Bild | Titel / Text | Bild | Titel / Text
Bild | Titel / Text | Bild | Titel / Text
Gruppenüberschrift 2
Bild | Titel / Text | Bild | Titel / Text
Bild | Titel / Text | Bild | Titel / Text
Gruppenüberschrift 3
Bild | Titel / Text | Bild | Titel / Text
Bild | Titel / Text | Bild | Titel / Text
Input:
Code: Alles auswählen
$counter=100; //Anzahl verfügbare CMS_ in Lookup-Table
echo '<table><tr>
<td>Anzahl Gruppen:</td>
<td><input type="text" size="2" maxlength="2" name="CMS_VAR[0]" value="CMS_VALUE[0]"></td>
<td>Personen pro Zeile: </td>
<td><input type="text" size="2" maxlength="2" name="CMS_VAR[1]" value="CMS_VALUE[1]"></td>
</tr><tr><td colspan="4"><strong>
Bitte beachten: Die Anzahl der Personen darf in der Summe '.$counter.' nicht überschreiten. <br>
Wird die Zahl der Gruppen nachträglich reduziert, werden Gruppenüberschriften und Personenzahl <br>
der wegfallenden Gruppen gelöscht!</strong>
<hr></td></tr>';
if ("CMS_VALUE[0]">0) {
for ($i=2;$i<=("CMS_VALUE[0]"*2);$i+=2) {
if($counter>0) {
echo '<tr><td>Gruppenüberschrift: </td>
<td><input type="text" size="20" maxlength="50" name="CMS_VAR['.$i.']" value="';
echo $CMS_VALUE[$i];
echo '"> </td><td>Anzahl Personen: </td>
<td><input type="text" size="2" maxlength="2" name="CMS_VAR['.($i+1).']" value="';
echo $CMS_VALUE[($i+1)];
$counter -= $CMS_VALUE[($i+1)];
echo '"> </td></tr>';
} else {
echo '<tr><td colspan="2"><strong>maximal mögliche Anzahl Personen erreicht,
bitte reduzieren Sie die Anzahl der Personen!</strong></td></tr>';
break;
}
}
}
echo '</table>';
Code: Alles auswählen
<?php
$CMS_TYPE = array(
array("img" => "CMS_IMG[100]","imgedit" => "CMS_IMGEDIT[100]","head" => "CMS_HEAD[100]","html" => "CMS_HTML[100]"),
array("img" => "CMS_IMG[101]","imgedit" => "CMS_IMGEDIT[101]","head" => "CMS_HEAD[101]","html" => "CMS_HTML[101]"),
array("img" => "CMS_IMG[102]","imgedit" => "CMS_IMGEDIT[102]","head" => "CMS_HEAD[102]","html" => "CMS_HTML[102]"),
array("img" => "CMS_IMG[103]","imgedit" => "CMS_IMGEDIT[103]","head" => "CMS_HEAD[103]","html" => "CMS_HTML[103]"),
array("img" => "CMS_IMG[104]","imgedit" => "CMS_IMGEDIT[104]","head" => "CMS_HEAD[104]","html" => "CMS_HTML[104]"),
array("img" => "CMS_IMG[105]","imgedit" => "CMS_IMGEDIT[105]","head" => "CMS_HEAD[105]","html" => "CMS_HTML[105]"),
array("img" => "CMS_IMG[106]","imgedit" => "CMS_IMGEDIT[106]","head" => "CMS_HEAD[106]","html" => "CMS_HTML[106]"),
array("img" => "CMS_IMG[107]","imgedit" => "CMS_IMGEDIT[107]","head" => "CMS_HEAD[107]","html" => "CMS_HTML[107]"),
array("img" => "CMS_IMG[108]","imgedit" => "CMS_IMGEDIT[108]","head" => "CMS_HEAD[108]","html" => "CMS_HTML[108]"),
array("img" => "CMS_IMG[109]","imgedit" => "CMS_IMGEDIT[109]","head" => "CMS_HEAD[109]","html" => "CMS_HTML[109]"),
array("img" => "CMS_IMG[110]","imgedit" => "CMS_IMGEDIT[110]","head" => "CMS_HEAD[110]","html" => "CMS_HTML[110]"),
array("img" => "CMS_IMG[111]","imgedit" => "CMS_IMGEDIT[111]","head" => "CMS_HEAD[111]","html" => "CMS_HTML[111]"),
array("img" => "CMS_IMG[112]","imgedit" => "CMS_IMGEDIT[112]","head" => "CMS_HEAD[112]","html" => "CMS_HTML[112]"),
array("img" => "CMS_IMG[113]","imgedit" => "CMS_IMGEDIT[113]","head" => "CMS_HEAD[113]","html" => "CMS_HTML[113]"),
array("img" => "CMS_IMG[114]","imgedit" => "CMS_IMGEDIT[114]","head" => "CMS_HEAD[114]","html" => "CMS_HTML[114]"),
array("img" => "CMS_IMG[115]","imgedit" => "CMS_IMGEDIT[115]","head" => "CMS_HEAD[115]","html" => "CMS_HTML[115]"),
array("img" => "CMS_IMG[116]","imgedit" => "CMS_IMGEDIT[116]","head" => "CMS_HEAD[116]","html" => "CMS_HTML[116]"),
array("img" => "CMS_IMG[117]","imgedit" => "CMS_IMGEDIT[117]","head" => "CMS_HEAD[117]","html" => "CMS_HTML[117]"),
array("img" => "CMS_IMG[118]","imgedit" => "CMS_IMGEDIT[118]","head" => "CMS_HEAD[118]","html" => "CMS_HTML[118]"),
array("img" => "CMS_IMG[119]","imgedit" => "CMS_IMGEDIT[119]","head" => "CMS_HEAD[119]","html" => "CMS_HTML[119]"),
array("img" => "CMS_IMG[120]","imgedit" => "CMS_IMGEDIT[120]","head" => "CMS_HEAD[120]","html" => "CMS_HTML[120]"),
array("img" => "CMS_IMG[121]","imgedit" => "CMS_IMGEDIT[121]","head" => "CMS_HEAD[121]","html" => "CMS_HTML[121]"),
array("img" => "CMS_IMG[122]","imgedit" => "CMS_IMGEDIT[122]","head" => "CMS_HEAD[122]","html" => "CMS_HTML[122]"),
array("img" => "CMS_IMG[123]","imgedit" => "CMS_IMGEDIT[123]","head" => "CMS_HEAD[123]","html" => "CMS_HTML[123]"),
array("img" => "CMS_IMG[124]","imgedit" => "CMS_IMGEDIT[124]","head" => "CMS_HEAD[124]","html" => "CMS_HTML[124]"),
array("img" => "CMS_IMG[125]","imgedit" => "CMS_IMGEDIT[125]","head" => "CMS_HEAD[125]","html" => "CMS_HTML[125]"),
array("img" => "CMS_IMG[126]","imgedit" => "CMS_IMGEDIT[126]","head" => "CMS_HEAD[126]","html" => "CMS_HTML[126]"),
array("img" => "CMS_IMG[127]","imgedit" => "CMS_IMGEDIT[127]","head" => "CMS_HEAD[127]","html" => "CMS_HTML[127]"),
array("img" => "CMS_IMG[128]","imgedit" => "CMS_IMGEDIT[128]","head" => "CMS_HEAD[128]","html" => "CMS_HTML[128]"),
array("img" => "CMS_IMG[129]","imgedit" => "CMS_IMGEDIT[129]","head" => "CMS_HEAD[129]","html" => "CMS_HTML[129]"),
array("img" => "CMS_IMG[130]","imgedit" => "CMS_IMGEDIT[130]","head" => "CMS_HEAD[130]","html" => "CMS_HTML[130]"),
array("img" => "CMS_IMG[131]","imgedit" => "CMS_IMGEDIT[131]","head" => "CMS_HEAD[131]","html" => "CMS_HTML[131]"),
array("img" => "CMS_IMG[132]","imgedit" => "CMS_IMGEDIT[132]","head" => "CMS_HEAD[132]","html" => "CMS_HTML[132]"),
array("img" => "CMS_IMG[133]","imgedit" => "CMS_IMGEDIT[133]","head" => "CMS_HEAD[133]","html" => "CMS_HTML[133]"),
array("img" => "CMS_IMG[134]","imgedit" => "CMS_IMGEDIT[134]","head" => "CMS_HEAD[134]","html" => "CMS_HTML[134]"),
array("img" => "CMS_IMG[135]","imgedit" => "CMS_IMGEDIT[135]","head" => "CMS_HEAD[135]","html" => "CMS_HTML[135]"),
array("img" => "CMS_IMG[136]","imgedit" => "CMS_IMGEDIT[136]","head" => "CMS_HEAD[136]","html" => "CMS_HTML[136]"),
array("img" => "CMS_IMG[137]","imgedit" => "CMS_IMGEDIT[137]","head" => "CMS_HEAD[137]","html" => "CMS_HTML[137]"),
array("img" => "CMS_IMG[138]","imgedit" => "CMS_IMGEDIT[138]","head" => "CMS_HEAD[138]","html" => "CMS_HTML[138]"),
array("img" => "CMS_IMG[139]","imgedit" => "CMS_IMGEDIT[139]","head" => "CMS_HEAD[139]","html" => "CMS_HTML[139]"),
array("img" => "CMS_IMG[140]","imgedit" => "CMS_IMGEDIT[140]","head" => "CMS_HEAD[140]","html" => "CMS_HTML[140]"),
array("img" => "CMS_IMG[141]","imgedit" => "CMS_IMGEDIT[141]","head" => "CMS_HEAD[141]","html" => "CMS_HTML[141]"),
array("img" => "CMS_IMG[142]","imgedit" => "CMS_IMGEDIT[142]","head" => "CMS_HEAD[142]","html" => "CMS_HTML[142]"),
array("img" => "CMS_IMG[143]","imgedit" => "CMS_IMGEDIT[143]","head" => "CMS_HEAD[143]","html" => "CMS_HTML[143]"),
array("img" => "CMS_IMG[144]","imgedit" => "CMS_IMGEDIT[144]","head" => "CMS_HEAD[144]","html" => "CMS_HTML[144]"),
array("img" => "CMS_IMG[145]","imgedit" => "CMS_IMGEDIT[145]","head" => "CMS_HEAD[145]","html" => "CMS_HTML[145]"),
array("img" => "CMS_IMG[146]","imgedit" => "CMS_IMGEDIT[146]","head" => "CMS_HEAD[146]","html" => "CMS_HTML[146]"),
array("img" => "CMS_IMG[147]","imgedit" => "CMS_IMGEDIT[147]","head" => "CMS_HEAD[147]","html" => "CMS_HTML[147]"),
array("img" => "CMS_IMG[148]","imgedit" => "CMS_IMGEDIT[148]","head" => "CMS_HEAD[148]","html" => "CMS_HTML[148]"),
array("img" => "CMS_IMG[149]","imgedit" => "CMS_IMGEDIT[149]","head" => "CMS_HEAD[149]","html" => "CMS_HTML[149]"),
array("img" => "CMS_IMG[150]","imgedit" => "CMS_IMGEDIT[150]","head" => "CMS_HEAD[150]","html" => "CMS_HTML[150]"),
array("img" => "CMS_IMG[151]","imgedit" => "CMS_IMGEDIT[151]","head" => "CMS_HEAD[151]","html" => "CMS_HTML[151]"),
array("img" => "CMS_IMG[152]","imgedit" => "CMS_IMGEDIT[152]","head" => "CMS_HEAD[152]","html" => "CMS_HTML[152]"),
array("img" => "CMS_IMG[153]","imgedit" => "CMS_IMGEDIT[153]","head" => "CMS_HEAD[153]","html" => "CMS_HTML[153]"),
array("img" => "CMS_IMG[154]","imgedit" => "CMS_IMGEDIT[154]","head" => "CMS_HEAD[154]","html" => "CMS_HTML[154]"),
array("img" => "CMS_IMG[155]","imgedit" => "CMS_IMGEDIT[155]","head" => "CMS_HEAD[155]","html" => "CMS_HTML[155]"),
array("img" => "CMS_IMG[156]","imgedit" => "CMS_IMGEDIT[156]","head" => "CMS_HEAD[156]","html" => "CMS_HTML[156]"),
array("img" => "CMS_IMG[157]","imgedit" => "CMS_IMGEDIT[157]","head" => "CMS_HEAD[157]","html" => "CMS_HTML[157]"),
array("img" => "CMS_IMG[158]","imgedit" => "CMS_IMGEDIT[158]","head" => "CMS_HEAD[158]","html" => "CMS_HTML[158]"),
array("img" => "CMS_IMG[159]","imgedit" => "CMS_IMGEDIT[159]","head" => "CMS_HEAD[159]","html" => "CMS_HTML[159]"),
array("img" => "CMS_IMG[160]","imgedit" => "CMS_IMGEDIT[160]","head" => "CMS_HEAD[160]","html" => "CMS_HTML[160]"),
array("img" => "CMS_IMG[161]","imgedit" => "CMS_IMGEDIT[161]","head" => "CMS_HEAD[161]","html" => "CMS_HTML[161]"),
array("img" => "CMS_IMG[162]","imgedit" => "CMS_IMGEDIT[162]","head" => "CMS_HEAD[162]","html" => "CMS_HTML[162]"),
array("img" => "CMS_IMG[163]","imgedit" => "CMS_IMGEDIT[163]","head" => "CMS_HEAD[163]","html" => "CMS_HTML[163]"),
array("img" => "CMS_IMG[164]","imgedit" => "CMS_IMGEDIT[164]","head" => "CMS_HEAD[164]","html" => "CMS_HTML[164]"),
array("img" => "CMS_IMG[165]","imgedit" => "CMS_IMGEDIT[165]","head" => "CMS_HEAD[165]","html" => "CMS_HTML[165]"),
array("img" => "CMS_IMG[166]","imgedit" => "CMS_IMGEDIT[166]","head" => "CMS_HEAD[166]","html" => "CMS_HTML[166]"),
array("img" => "CMS_IMG[167]","imgedit" => "CMS_IMGEDIT[167]","head" => "CMS_HEAD[167]","html" => "CMS_HTML[167]"),
array("img" => "CMS_IMG[168]","imgedit" => "CMS_IMGEDIT[168]","head" => "CMS_HEAD[168]","html" => "CMS_HTML[168]"),
array("img" => "CMS_IMG[169]","imgedit" => "CMS_IMGEDIT[169]","head" => "CMS_HEAD[169]","html" => "CMS_HTML[169]"),
array("img" => "CMS_IMG[170]","imgedit" => "CMS_IMGEDIT[170]","head" => "CMS_HEAD[170]","html" => "CMS_HTML[170]"),
array("img" => "CMS_IMG[171]","imgedit" => "CMS_IMGEDIT[171]","head" => "CMS_HEAD[171]","html" => "CMS_HTML[171]"),
array("img" => "CMS_IMG[172]","imgedit" => "CMS_IMGEDIT[172]","head" => "CMS_HEAD[172]","html" => "CMS_HTML[172]"),
array("img" => "CMS_IMG[173]","imgedit" => "CMS_IMGEDIT[173]","head" => "CMS_HEAD[173]","html" => "CMS_HTML[173]"),
array("img" => "CMS_IMG[174]","imgedit" => "CMS_IMGEDIT[174]","head" => "CMS_HEAD[174]","html" => "CMS_HTML[174]"),
array("img" => "CMS_IMG[175]","imgedit" => "CMS_IMGEDIT[175]","head" => "CMS_HEAD[175]","html" => "CMS_HTML[175]"),
array("img" => "CMS_IMG[176]","imgedit" => "CMS_IMGEDIT[176]","head" => "CMS_HEAD[176]","html" => "CMS_HTML[176]"),
array("img" => "CMS_IMG[177]","imgedit" => "CMS_IMGEDIT[177]","head" => "CMS_HEAD[177]","html" => "CMS_HTML[177]"),
array("img" => "CMS_IMG[178]","imgedit" => "CMS_IMGEDIT[178]","head" => "CMS_HEAD[178]","html" => "CMS_HTML[178]"),
array("img" => "CMS_IMG[179]","imgedit" => "CMS_IMGEDIT[179]","head" => "CMS_HEAD[179]","html" => "CMS_HTML[179]"),
array("img" => "CMS_IMG[180]","imgedit" => "CMS_IMGEDIT[180]","head" => "CMS_HEAD[180]","html" => "CMS_HTML[180]"),
array("img" => "CMS_IMG[181]","imgedit" => "CMS_IMGEDIT[181]","head" => "CMS_HEAD[181]","html" => "CMS_HTML[181]"),
array("img" => "CMS_IMG[182]","imgedit" => "CMS_IMGEDIT[182]","head" => "CMS_HEAD[182]","html" => "CMS_HTML[182]"),
array("img" => "CMS_IMG[183]","imgedit" => "CMS_IMGEDIT[183]","head" => "CMS_HEAD[183]","html" => "CMS_HTML[183]"),
array("img" => "CMS_IMG[184]","imgedit" => "CMS_IMGEDIT[184]","head" => "CMS_HEAD[184]","html" => "CMS_HTML[184]"),
array("img" => "CMS_IMG[185]","imgedit" => "CMS_IMGEDIT[185]","head" => "CMS_HEAD[185]","html" => "CMS_HTML[185]"),
array("img" => "CMS_IMG[186]","imgedit" => "CMS_IMGEDIT[186]","head" => "CMS_HEAD[186]","html" => "CMS_HTML[186]"),
array("img" => "CMS_IMG[187]","imgedit" => "CMS_IMGEDIT[187]","head" => "CMS_HEAD[187]","html" => "CMS_HTML[187]"),
array("img" => "CMS_IMG[188]","imgedit" => "CMS_IMGEDIT[188]","head" => "CMS_HEAD[188]","html" => "CMS_HTML[188]"),
array("img" => "CMS_IMG[189]","imgedit" => "CMS_IMGEDIT[189]","head" => "CMS_HEAD[189]","html" => "CMS_HTML[189]"),
array("img" => "CMS_IMG[190]","imgedit" => "CMS_IMGEDIT[190]","head" => "CMS_HEAD[190]","html" => "CMS_HTML[190]"),
array("img" => "CMS_IMG[191]","imgedit" => "CMS_IMGEDIT[191]","head" => "CMS_HEAD[191]","html" => "CMS_HTML[191]"),
array("img" => "CMS_IMG[192]","imgedit" => "CMS_IMGEDIT[192]","head" => "CMS_HEAD[192]","html" => "CMS_HTML[192]"),
array("img" => "CMS_IMG[193]","imgedit" => "CMS_IMGEDIT[193]","head" => "CMS_HEAD[193]","html" => "CMS_HTML[193]"),
array("img" => "CMS_IMG[194]","imgedit" => "CMS_IMGEDIT[194]","head" => "CMS_HEAD[194]","html" => "CMS_HTML[194]"),
array("img" => "CMS_IMG[195]","imgedit" => "CMS_IMGEDIT[195]","head" => "CMS_HEAD[195]","html" => "CMS_HTML[195]"),
array("img" => "CMS_IMG[196]","imgedit" => "CMS_IMGEDIT[196]","head" => "CMS_HEAD[196]","html" => "CMS_HTML[196]"),
array("img" => "CMS_IMG[197]","imgedit" => "CMS_IMGEDIT[197]","head" => "CMS_HEAD[197]","html" => "CMS_HTML[197]"),
array("img" => "CMS_IMG[198]","imgedit" => "CMS_IMGEDIT[198]","head" => "CMS_HEAD[198]","html" => "CMS_HTML[198]"),
array("img" => "CMS_IMG[199]","imgedit" => "CMS_IMGEDIT[199]","head" => "CMS_HEAD[199]","html" => "CMS_HTML[199]"),
array("img" => "CMS_IMG[200]","imgedit" => "CMS_IMGEDIT[200]","head" => "CMS_HEAD[200]","html" => "CMS_HTML[200]")
);
$counter=0;
echo '<table class="team">';
for ($i=2;$i<=("CMS_VALUE[0]"*2);$i+=2) {
echo '<tr><th colspan="'.("CMS_VALUE[1]"*2).'">';
echo $CMS_VALUE[$i];
echo "</th></tr><tr>";
$maxCols="CMS_VALUE[1]";
for ($j=1; $j<=$CMS_VALUE[($i+1)]; $j++) {
if($maxCols==0) {
echo '</tr><tr>';
$maxCols="CMS_VALUE[1]";
}
if($counter<count($CMS_TYPE)) {
echo '<td><img src="'.$CMS_TYPE[$counter]["img"].
'" width="80" height="100">'.$CMS_TYPE[$counter]["imgedit"].'</td>';
echo '<td valign="top"><h3>'.$CMS_TYPE[$counter]["head"].'</h3>'.
$CMS_TYPE[$counter]["html"].'</td>';
$counter++;
$maxCols--;
} elseif ($edit) {
echo '<td>maximale Anzahl Personen erreicht!</td>';
break 2;
}
}
echo '</tr>';
}
echo '</table>';
?>
Grüße
_Marc