Salve,
ho un problema con un form.
Creo il form utilizzando la classe Zend_Form e passando come parametro un oggetto Zend_Config_Xml che carica il seguente file.
Codice PHP:
<xml>
<action>reguser/</action>
<method>POST</method>
<id>registrazione</id>
<decorators>
<FormElements>
<decorator>FormElements</decorator>
<options></options>
</FormElements>
<HtmlTag>
<decorator>HtmlTag</decorator>
<options>
<tag>div</tag>
<id>reg-form</id>
</options>
</HtmlTag>
<Form>
<decorator>Form</decorator>
<options></options>
</Form>
</decorators>
<elements>
<email>
<type>text</type>
<name>email</name>
<required>true</required>
<options>
<label>Indirizzo eMail</label>
<Decorators>
<ViewHelper>
<decorator>ViewHelper</decorator>
<options></options>
</ViewHelper>
<Errors>
<decorator>Errors</decorator>
<options></options>
</Errors>
<Description>
<decorator>Description</decorator>
</Description>
<HtmlTag>
<decorator>HtmlTag</decorator>
<options>
<tag>div</tag>
<id>email</id>
</options>
</HtmlTag>
<FormElements>
<decorator>FormElements</decorator>
<options></options>
</FormElements>
<Label>
<decorator>Label</decorator>
<options>
<tag>div</tag>
<id>label-email</id>
</options>
</Label>
</Decorators>
<Validators>
<EmailAddress>
<validator>EmailAddress</validator>
<options>
<messages>
<emailAddressInvalid>Tipo di dato non corretto. Devi inserire un indirizzo e-mail valido</emailAddressInvalid>
<emailAddressInvalidFormat>%value% non è un indirizzo corretto nella forma base [email]nome@hostname.domi[/email]nio</emailAddressInvalidFormat>
<emailAddressInvalidHostname>%hostname% non è un dominio corretto. L'indirizzo %value% non è pertanto corretto</emailAddressInvalidHostname>
<emailAddressInvalidLocalPart>%localPart% non può essere parte dell'indirizzo %value%</emailAddressInvalidLocalPart>
<emailAddressLengthExceeded>%value% è un indirizzo troppo lungo</emailAddressLengthExceeded>
</messages>
</options>
</EmailAddress>
</Validators>
</options>
</email>
</elements>
</xml>
Il form lo creo così
Codice PHP:
$xml = new Zend_Config_Xml("form.xml");
$form = new Zend_Form($xml);
$this->view->form = $form->render();
Con questo codice non faccio altro che creare un form e renderizzarlo per essere visto. Il problema nasce sui messaggi dei validators. Dal file si vede che ho creato un validator del tipo eMailAddresses, e ho customizzato alcuni messaggi.
Ci sono altri messaggi però, all'interno dell'oggetto EmailAddresses, che fanno parte dell'oggetto Zend_Validate_Hostname. Tale oggetto mi pare di capire che controlla se l'hostname indicato quando si inserisce un indirizzo mail sia o meno esistente. Anche questo oggetto contiene dei messaggi, ma non riesco a customizzarli tramite il file xml. Qualcuno si è mai trovato in questa sitazione?
Grazie,
Ciao.