next up previous contents index
Next: Der Eintrag appearance im Up: DB-Table-Submodule Previous: Der Eintrag table_param

Der Eintrag form_param im Detail

 Über form_param wird für 'anzeige', 'neues_tupel', 'aendern' und 'loeschen' das Aussehen der Formulare eingestellt. Möglich sind die Verwendung von Select-Feldern, Check-Boxen, die Einstellung der Breiten der Textfelder etc. Die Details zu form_param können in der Beschreibung zu 'lib-html.php.inc' (siehe ) nachgeschlagen werden.

Darüber hinaus enthält das Array 'form_param' aber auch Informationen die von 'lib-dbtable' ausgewertet werden. Die für 'lib-dbtable' wesentlichen Bestandteile des Arrays sind mit den Feldnamen indiziert, d.h. mit den Attribut- bzw. Aliasnamen des Query oder bei 'neues_tupel' mit den Schlüsseln des values-Array.

In einer normalisierten Datenbank wird viel mit Fremdschlüsseln und Beziehungstabellen gearbeitet. Beispielsweise wird in den Tabellen, in denen ein Bezug auf den Universitätsnamen notwendig ist nicht der Name selber gespeichert, sondern es wird ein Fremdschlüssel eingefügt, der sich auf eine Universitätstabelle bezieht. Damit in der HTML-Darstellung der Tabelle statt des nichtssagenden Fremdschlüssels, der Name angezeigt wird, gibt es verschiedene Möglichkeiten:

Der eigentliche Vorteil des Lookup-Konzeptes ergibt sich aber erst bei der Verwendung mit Formularen. Formulare werden dann eingesetzt, wenn die Möglichkeit besteht, Werte zu verändern oder neue Werte einzugeben. Der Anwender weiß in der Regel über die Bedeutung der Fremdschlüssel in einer Tabelle nicht Bescheid. Statt dessen wäre es sinnvoll, dem Anwender eine Liste der möglichen Werte vorzugeben. Diese Liste enthält dann auch nicht die Fremdschlüssel, sondern aussagekräftigere Werte aus der Tabelle, die durch den Fremdschlüssel referenziert wird. Im Falle des Universitätsbeispiels wäre es also wünschenswert, dem Anwender eine Liste der Universitätsnamen vorzugeben, aus der er die gewünschte Universität auswählen kann. Genau das leistet 'lib-dbtable' bei der Verwendung des Lookup-Konzepts. Die angegebene SELECT-Anfrage wird vor der Ausgabe durchgeführt. Dabei wird jeweils der erste Wert der Ergebnistupel als Schlüssel aufgefasst. Die folgenden Werte werden dem Anwender in der Auswahlliste präsentiert. Die Auswahlliste wird in die HTML-Formulare als select-Auswahl oder mit Radio-Buttons eingebaut.

Die für 'lib-dbtable' wesentlichen Bestandteile von 'form_param' sind in Tabelle [*] zusammengefasst.


 
Tabelle:  Bestandteile von $form_param, die von lib-dbtable ausgewertet werden.
Eintrag Beschreibung Default
lookup SQL-Anfrage, die den Schlüssel und weitere ``verständliche`` Werte aus der Datenbank holt.  
type Legt fest, welcher HTML-Feldtyp im Formular verwendet werden soll. Diese Angabe wird nicht nur bei der Verwendung des Lookup-Konzepts ausgewertet. Im Zusammenhang mit dem Lookup-Konzept machen folgende Typen sinn: select, radio, constant.
2675{Feld änderbar: Bis zu 3 Ergebnistupel: radio; mehr als 3: select
Feld nicht änderbar: constant    
format Format-String; damit kann die Darstellung der ``verständlichen`` Werte beeinflusst werden. Alle Werte eines Ergebnistupel, außer dem ersten, werden durch Leerzeichen getrent aneinander gehängt.
null_option Boolscher Wert, der es ermöglicht zusätzlich zu den aus der Anfrage ermittelten Werten noch einen NULL-Wert anzugeben. Wird dieser Wert ausgewählt wird in der DB an der entsprechenden Stelle NULL eingefügt. True

Bemerkungen zu Tabelle [*]:

Durch das folgende Beispiel wird eine Tabelle ausgegeben, die anzeigt, welcher Student welche Übungsgruppe besucht. Statt der Gruppennummer wird aus den Tabellen 'uebungsgruppe' und 'wochentag' ein aussagekräftigerer String dargestellt:
next up previous contents index
Next: Der Eintrag appearance im Up: DB-Table-Submodule Previous: Der Eintrag table_param
Copyright Munich Network Management Team