Mip-forms
Aus DeDi-Help
(Unterschied zwischen Versionen)
Version vom 01:03, 9. Aug. 2004 (bearbeiten) Bjoern (Diskussion | Beiträge) (→Einleitendes Beispiel) ← Zum vorherigen Versionsunterschied |
Version vom 01:13, 9. Aug. 2004 (bearbeiten) (Entfernen) Bjoern (Diskussion | Beiträge) (→Einleitendes Beispiel) Zum nächsten Versionsunterschied → |
||
Zeile 41: | Zeile 41: | ||
<span id='MOD_VALUE[2]'>MOD_VALUE[1]</span> | <span id='MOD_VALUE[2]'>MOD_VALUE[1]</span> | ||
+ | |||
Erklrung: | Erklrung: | ||
- | {| border=1 | + | '''$mip_form['0']['cat'] = 'txt''''<br> |
- | |$mip_form['0']['cat'] = 'txt' | + | Die erste Zeile des ersten Blocks. In diesem Block wird das Textfeld definiert. Die Kategorie 'cat' hat die Bezeichnung txt und damit ein Textfeld (Zur Zeit stehen die Kategorien txtarea, option, chk, radio und app_x zur Verfgung). |
- | |Die erste Zeile des ersten Blocks. In diesem Block wird das Textfeld definiert. Die Kategorie 'cat' hat die Bezeichnung txt und damit ein Textfeld (Zur Zeit stehen die Kategorien txtarea, option, chk, radio und app_x zur Verfgung). | + | |
- | |- | + | |
- | |$mip_form['0']['type'] = ''; | + | '''$mip_form['0']['type'] = <nowiki>''</nowiki>''';<br> |
- | |'type' bestimmt das Aussehen des Textfeldes. Mgliche Werte sind '', 'chk', 'radio', 'long', 'chk_long', 'radio_long'. Wird kein Wert angegeben (wie in diesem Beispiel), wird der Defaultwert '[Beschreibung] [Textbox]' genommen. Im "default"- Fall kann die Variable auch weggelassen werden. Die einzelenen type- Werte fr Textfelder im berblick: | + | 'type' bestimmt das Aussehen des Textfeldes. Mgliche Werte sind '', 'chk', 'radio', 'long', 'chk_long', 'radio_long'. Wird kein Wert angegeben (wie in diesem Beispiel), wird der Defaultwert '[Beschreibung] [Textbox]' genommen. Im "default"- Fall kann die Variable auch weggelassen werden. Die einzelenen type- Werte fr Textfelder im berblick: |
Zeile 71: | Zeile 72: | ||
- | |- | + | |
- | |$mip_form['0']['desc'] = 'Beschreibung'; | + | '''$mip_form['0']['desc']='Beschreibung';'''<br> |
- | |Die Beschriftung des Textfeldes (Label) | + | Die Beschriftung des Textfeldes (Label) |
- | |- | + | |
- | |$mip_form['0']['cms_var'] = $dedi_mod['value']['1'];<br> | + | |
- | $mip_form['0']['cms_val'] = 'MOD_VALUE[1]'; | + | '''$mip_form['0']['cms_var']=$dedi_mod['value']['1'];<br> |
- | |Die Variable, in denen DeDi den Wert speichern wird. | + | $mip_form['0']['cms_val']='MOD_VALUE[1]';<br>''' |
- | |- | + | Die Variable, in denen DeDi den Wert speichern wird. |
- | |$mip_form['0']['cms_val_default'] = 'Hallo Welt'; | + | |
- | |Ist die betreffende MOD_VAR[x] noch leer, wird ein defaultwert eingetragen. | + | |
- | |- | + | '''$mip_form['0']['cms_val_default'] = 'Hallo Welt';''' <br> |
- | |$mip_form['0']['tab'] = '0'; | + | Ist die betreffende MOD_VAR[x] noch leer, wird ein defaultwert eingetragen. |
- | |Hiermit knnen Konfigurationsfelder eingerckt werden. Erleichtert die bersicht bei komplexen Konfigurationen. | + | |
- | |} | + | |
+ | '''$mip_form['0']['tab'] = '0';''' <br> | ||
+ | Hiermit knnen Konfigurationsfelder eingerckt werden. Erleichtert die bersicht bei komplexen Konfigurationen. | ||
+ | |||
Es folgt der zweite Block. Hier wird der CSS- Parser konfiguriert. | Es folgt der zweite Block. Hier wird der CSS- Parser konfiguriert. | ||
- | {| border=1 | + | |
- | |$mip_form['1']['cat'] = 'app_css'; | + | '''$mip_form['1']['cat']='app_css';''' <br> |
- | |Der CSS-Parser wird aufgerufen. Kleine Applikationen gehren bei den mip-forms immer in die Kategorie app_xxx | + | Der CSS-Parser wird aufgerufen. Kleine Applikationen gehren bei den mip-forms immer in die Kategorie app_xxx |
- | |- | + | |
- | |$mip_form['1']['output_cat'] = 'option'; | + | |
- | |'output_cat' gibt die Kategorie an, wie das Formularfeld spter beschaffen sein soll und entspricht im Endeffekt 'cat', 'option' oder 'radio' sind sinnvoll. Empfehlung: 'option' | + | '''$mip_form['1']['output_cat']='option';'''<br> |
- | |- | + | 'output_cat' gibt die Kategorie an, wie das Formularfeld spter beschaffen sein soll und entspricht im Endeffekt 'cat', 'option' oder 'radio' sind sinnvoll. Empfehlung: 'option' |
- | |$mip_form['1']['flag'] = "id_only"; | + | |
- | |'flag' ist ein optionaler Parameter. 'id_only' parst nur css-Id's, 'class_only' parst nur css-Klassen. Es wird dringend empfohlen, diesen Parameter zu setzen, da hinterher keine Rckschlsse mehr auf die Herkunft gezogen werden knnen (z.B. wird die Klasse ".class_or_id" spter zu der Variablen 'class_or_id', ebenso wird die CSS- ID '#class_or_id' zur Variablen 'class_or_id'. Die Meisten Module benutzen die Option 'class_only' | + | |
- | |- | + | '''$mip_form['1']['flag'] = 'id_only';''' <br> |
- | |mip_formsp($mip_form['0']);<br> | + | 'flag' ist ein optionaler Parameter. 'id_only' parst nur css-Id's, 'class_only' parst nur css-Klassen. Es wird dringend empfohlen, diesen Parameter zu setzen, da hinterher keine Rckschlsse mehr auf die Herkunft gezogen werden knnen (z.B. wird die Klasse ".class_or_id" spter zu der Variablen 'class_or_id', ebenso wird die CSS- ID '#class_or_id' zur Variablen 'class_or_id'. Die Meisten Module benutzen die Option 'class_only' |
- | mip_formsp($mip_form['1']); | + | |
- | |Die Formulare werden ausgegeben. Das 'p' bei 'mip_formsp' steht fr print, also fr die direkte | + | |
+ | '''mip_formsp($mip_form['0']);<br> | ||
+ | mip_formsp($mip_form['1']);<br>''' | ||
+ | Die Formulare werden ausgegeben. Das 'p' bei 'mip_formsp' steht fr print, also fr die direkte | ||
Ausgabe im Browser. Alternativ knnen die einzelnen Formularbausteine auch in Variablen abgespeichert werden. Dies geschieht dann in der Art von $meine_variable = mip_forms($mip_form['0']); | Ausgabe im Browser. Alternativ knnen die einzelnen Formularbausteine auch in Variablen abgespeichert werden. Dies geschieht dann in der Art von $meine_variable = mip_forms($mip_form['0']); | ||
- | |- | + | |
- | |unset($mip_form); | + | |
- | |Hier wird der Array mip_form[][] zerstrt und der genutzte Speicher wieder freigegeben. Dies solltet ihr auf keinen Fall vergessen. Ich gehe einfach mal davon aus, dass bei der Modulentwicklung viele der hier angegebenen Beispiele per copy/ paste bernehmen werden. Daher wird in vielen Modulen der Array mip_form[][] vorkommen. Nicht zerstrte Arrays werden dann frher oder spter dazu fhren, dass einzelne Werte in verschiedenen Modulen miteinander kollidieren. Gerade die Typen 'option' und 'radio' werden davon betroffen sein. Im Konfigurationsbereich der Module gibt es bei nicht zurckgesetzten mip_form- Arrays noch ein zustzliches Hindernis. Da auf Dehler bei der Modulbearbeitung hingewiesen wird, mu das Modul zwei mal ausgefhrt werden. Einmal um das Modu zu testen und auf eventuelle Fehler aufmerksam zu machen und zum Anderen um die Ausgabe auf dem Bildschirm auszugeben. Wird hier das unset vergessen, sind Eintrge in den Dropdownboxen zumeist doppelt vorhanden. | + | '''unset($mip_form);'''<br> |
- | |} | + | Hier wird der Array mip_form[][] zerstrt und der genutzte Speicher wieder freigegeben. Dies solltet ihr auf keinen Fall vergessen. Ich gehe einfach mal davon aus, dass bei der Modulentwicklung viele der hier angegebenen Beispiele per copy/ paste bernehmen werden. Daher wird in vielen Modulen der Array mip_form[][] vorkommen. Nicht zerstrte Arrays werden dann frher oder spter dazu fhren, dass einzelne Werte in verschiedenen Modulen miteinander kollidieren. Gerade die Typen 'option' und 'radio' werden davon betroffen sein. Im Konfigurationsbereich der Module gibt es bei nicht zurckgesetzten mip_form- Arrays noch ein zustzliches Hindernis. Da auf Dehler bei der Modulbearbeitung hingewiesen wird, mu das Modul zwei mal ausgefhrt werden. Einmal um das Modu zu testen und auf eventuelle Fehler aufmerksam zu machen und zum Anderen um die Ausgabe auf dem Bildschirm auszugeben. Wird hier das unset vergessen, sind Eintrge in den Dropdownboxen zumeist doppelt vorhanden. |
==Referenz== | ==Referenz== |