Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Bonjour à tous...
Je cherche à personnaliser un élément File. Dans le formulaire, le fichier est une image je voudrais donc que dans le cas de la mise à jour, l'image (si elle existe) soit affichée... Cependant je n'arrive pas à récupérer le nom du fichier qui portant est transmit au $form->populate(array). Le $fileElement->getValue(); me retourne une chaine vide...
Bref je ne sais pas comment procéder.
Quelqu'un aurait-il des pistes?
Merci et bon dimanche
Hors ligne
Ce n'est pas le but de l'élément file. Il sert à uploader des fichiers vers le serveur. Je ne vois pas pas pourquoi populate() aura une incidence sur cet élément. Zend_Form_Element_File::getValue() sert à donner le chemin d'accès complet à l'élément chargé. Il faut savoir que plusieurs méthodes de la classe Zend_Form_Element_File sont des proxys vers la classe Zend_File_Transfer_Adapter_Http. Quand tu veux étendre une classe du Zend Framework, je te recommande la lecture de son code, tu y trouveras des réponses.
Voici pourquoi ce que tu souhaiteras ne fonctionne pas de façon concrète en dehors de la sémantique que je viens de t'expliquer :
/** * Disallow setting the value * * @param mixed $value * @return Zend_Form_Element_File */ public function setValue($value) { return $this; }
On peut traduire «Disallow setting the value» par «Refuser de définir la valeur».
Un autre axe de solution pour ce que tu souhaites faire, et de définir ton propre script de rendu. Si le fichier existe, tu l'affiches, si non tu affiches l'élément file.
Hors ligne