phpbar.de logo

Mailinglisten-Archive

[pear] Problem mit addGroupRule bei QuickForm

[pear] Problem mit addGroupRule bei QuickForm

Ralf Eggert ralf at in-greece.de
Don Apr 29 15:49:05 CEST 2004


Hallo,

ich habe ein kleines Problem mit addGroupRule beim PEAR Paket QuickForm
(Version 3.2.2). Und zwar möchte ich sicherstellen, dass alle Elemente
einer Gruppe anhand von Regeln auf Gültigkeit überprüft werden. Als
Vorlage habe ich das Beispiel SmartyStatic_example.php genommen.

Mein Code sieht auszugsweise so aus:

------------------------------------------------------------------------
// erstelle zuerst die Gruppe "sot_name" mit den Elementen "de" und "en"

$group[de] = &HTML_QuickForm::createElement("text", "de", "Typ:", "");
$group[en] = &HTML_QuickForm::createElement("text", "en", "Typ:", "");
$this->form->addGroup($group, "sot_name", "Objekttyp:", "");

// definiere, dass die Elemente Pflichteingaben sind und dass maximal
// 32 Zeichen erlaubt sind

$rule[de][] = array("Eingabe fehlt", "required", "", "");
$rule[en][] = array("Eingabe fehlt", "required", "", "");
$this->form->addGroupRule("sot_name", $rule);

$rule[de][] = array("Max. 32 Zeichen erlaubt", "maxlength", "32", "");
$rule[en][] = array("Max. 32 Zeichen erlaubt", "maxlength", "32", "");
$this->form->addGroupRule("sot_name", $rule);
------------------------------------------------------------------------

Mittels print_r($this->form) habe ich mir dann einmal ausgeben lassen,
ob auch alle Deklarationen korrekt angekommen sind. Das Element
"sot_name" ist als html_quickform_group Objekt definiert. Die Felder
"sot_name[de]" und "sot_name[en]" sind als "_required" definiert, sowohl
im html_quickform_group Objekt als auch im html_quickform Objekt.
Ausserdem sind auch die "_rules" für die beiden Elemente "sot_name[de]"
und "sot_name[en]" korrekt definiert.

Dennoch werden die beiden Elemente "sot_name[de]" und "sot_name[en]"
beim Absenden des Formulars nicht überprüft. Wie oben beschrieben habe
ich als Vorlage das Beispiel SmartyStatic_example.php verwendet, welches
auch mit addGroupRule arbeitet, und die jeweiligen Code-Teile
verglichen. Dennoch kann ich keinen Unterschied entdecken.

Hat jemand einen Tipp für mich?

Ralf


php::bar PHP Wiki   -   Listenarchive