Hi, ich habe heute was interessantes entdeckt, und da das bisher in keinem Buch dokumentiert ist, poste ich es einfach mal rein.
Also angenommen wir haben eine Tabelle von Daten ausgegeben und wollen die Möglichkeit geben, einzelne Werte davon upzudaten. Dann müsste man (HTML sei dank) in jeder Zeile ein neues Formular erstellen und am Ende der Zeile immer ein Submit Button setzen. Sieht unschön aus und verbraucht Platz.
Wie könnte man das ganze in einem Formular machen?
Stellen wir uns vor, wir haben einen Rubrikenbaum ausgegeben, und wollen INPUT - Text Felder zur Verfügung stellen, mit denen man die Namen der neuen Unterkategorien anlegen kann, danach soll alles mit einem Submit in die DB geschrieben werden. Jedem INPUT - Text Feld muss also irgendwie die ID der Mutterkategorie übergeben werden.
Bei vielen Einträgen denkt man ja als erstes an Array's.
-> <input type="text" name="subCat[]" value="">
Was ich nun herausgefunden habe ist, dass man innerhalb der [] Klammern auch einen Schlüssel setzen darf, quasi so:
-> <input type="text" name="subCat[<?=$id;?>]" value="">
Auf der folgenden Seite hat man dann das Array $subCat mit dem angegebenen Schlüssel - Werte Paar.
Leider erzeugt ja dann jede Zeile einen Array Eintrag. Man muss also die herausfiltern, wo im Text Feld kein Wert eigegeben wurde:
das wärs. Jetzt könnte man das ganze in die DB updaten. Und das mach ich jetzt.
Falls ihr euch durch diesen klug******erischen Post belästigt fühlt, dann ättsch.... ich dachte das könnte jemand mal gebrauchen.
Ciao, F.o.G.
Also angenommen wir haben eine Tabelle von Daten ausgegeben und wollen die Möglichkeit geben, einzelne Werte davon upzudaten. Dann müsste man (HTML sei dank) in jeder Zeile ein neues Formular erstellen und am Ende der Zeile immer ein Submit Button setzen. Sieht unschön aus und verbraucht Platz.
Wie könnte man das ganze in einem Formular machen?
Stellen wir uns vor, wir haben einen Rubrikenbaum ausgegeben, und wollen INPUT - Text Felder zur Verfügung stellen, mit denen man die Namen der neuen Unterkategorien anlegen kann, danach soll alles mit einem Submit in die DB geschrieben werden. Jedem INPUT - Text Feld muss also irgendwie die ID der Mutterkategorie übergeben werden.
Bei vielen Einträgen denkt man ja als erstes an Array's.
-> <input type="text" name="subCat[]" value="">
Was ich nun herausgefunden habe ist, dass man innerhalb der [] Klammern auch einen Schlüssel setzen darf, quasi so:
-> <input type="text" name="subCat[<?=$id;?>]" value="">
Auf der folgenden Seite hat man dann das Array $subCat mit dem angegebenen Schlüssel - Werte Paar.
Leider erzeugt ja dann jede Zeile einen Array Eintrag. Man muss also die herausfiltern, wo im Text Feld kein Wert eigegeben wurde:
PHP:
$subCat2 = $subCat;
unset($subCat);
reset($subCat2);
while(list($k, $v) = each($subCat2)) {
if(!empty($v)) {
$subCat[$k] = $v;
}
}
das wärs. Jetzt könnte man das ganze in die DB updaten. Und das mach ich jetzt.
Falls ihr euch durch diesen klug******erischen Post belästigt fühlt, dann ättsch.... ich dachte das könnte jemand mal gebrauchen.
Ciao, F.o.G.