setRequiredNote('# sind Pflichtfelder'); // Kopfzeile hinzufuegen und neues Template dafuer setzen $myForm->addElement('header', '', 'Kreditkartendaten'); $myForm->setHeaderTemplate($headerTemplate); // Textfelder hinzufuegen und neues Template jeweils dafuer setzen $myForm->addElement('text', 'textKarteninhaber', 'Karteninhaber:'); $myForm->addElement('text', 'textKartennummer', 'Kartenummer:'); $myForm->setElementTemplate($elTemplate, 'textKarteninhaber'); $myForm->setElementTemplate($elTemplate, 'textKartennummer'); // Array fuer Kreditkartentypen $kartentypen = array( 'visa' => 'VISA', 'master' => 'EuroCard', 'amex' => 'American Express',); // Dropdownmenue fuer Kreditkartentypen $myForm->addElement('select', 'selectKartentypen', 'Kartentyp:', $kartentypen); // Arrays fuer Monate und Jahre $monate = array ( '01' => 'Januar', '02' => 'Februar', '03' => 'Maerz', '04' => 'April', '05' => 'Mai', '06' => 'Juni', '07' => 'Juli', '08' => 'August', '09' => 'September', '10' => 'Oktober', '11' => 'November','12' => 'Dezember' ); $jahre = array ( '2003' => '2003', '2004' => '2004', '2005' => '2005' ); // Gruppelemente fuer Monate und Jahre erstellen $gueltigBis[] = &HTML_QuickForm::createElement('select', 'selectGueltigMonat', NULL, $monate); $gueltigBis[] = &HTML_QuickForm::createElement('select', 'selectGueltigJahr', NULL, $jahre); // angelegte Elemente fuer Monate und Jahre Gruppieren $myForm->addGroup($gueltigBis, 'gueltigBisGruppe', 'Gültig bis:'); // Submitbutton hinzufuegen $myForm->addElement('submit', 'submitButton','Daten senden'); // Kreditkartennummer haben 16 Stellen $kartennummer =& $myForm->getElement('textKartennummer'); $kartennummer->setMaxLength(16); // Validierungsregeln: Die Zweitextfelder muessen gesetzt sein // Kreditkartennummer darf nur Nummern enthalten und muss 16stellig sein $myForm->addRule('textKarteninhaber', 'Bitte Karteninhaber angeben', 'required'); $myForm->addRule('textKartennummer', 'Bitte Kartennummer angeben', 'required'); $myForm->addRule('textKartennummer', 'Keine gültige Kartennummer', 'numeric'); $myForm->addRule('textKartennummer', 'Zu wenige Stellen bei Kartennummer', 'minlength', 16); // Falls Validierung erfolgreich ist, Formular einfrieren if ( $myForm->validate() ) { $myForm->removeElement('submitButton'); $myForm->freeze(); } // Formular anzeigen $myForm->display(); ?>