Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Bonjour,
Je cherche à uploader une photo et 3 fichier pdf.
J'arrive à uploder la photo par contre les pdf ne se mettent pas dans la base de donnée.
Voici ma form.
<?php class Application_Form_CreateContrat extends Zend_Form { public function init() { // Gestion de la photo du site $datas_medias = new Zend_Config_Ini(APPLICATION__INI_PATH, 'datas_medias'); $max_file_size = $datas_medias->medias->max_file_size; $extensions = $datas_medias->medias->extensions; $this->setMethod('post'); $this->addElement( 'hidden', 'idsite', array( 'required' => true, )); $this->addElement( 'hidden', 'idcontrat', array( 'ignore' => true, 'value' => 0, )); $this->addElement( 'text', 'annees', array( 'label' => 'Années :', 'ignore' => true, 'filters' => array('StringTrim'), 'filters' => array('StripTags'), )); $photo = new Zend_Form_Element_File('photo'); $photo->setLabel('Photo de la chaufferie :') ->setRequired(true) ->addValidator('Size', false, $max_file_size) ->setMaxFileSize($max_file_size) ->addValidator('Count', false, 1) ->addValidator('Extension', false, $extensions); $this->addElement($photo, 'photo'); $docenergie = new Zend_Form_Element_File('docenergie'); $docenergie->setLabel('Contrat (P1) :') ->setRequired(true) ->addValidator('Size', false, $max_file_size) ->setMaxFileSize($max_file_size) ->addValidator('Count', false, 1) ->addValidator('Extension', false, 'pdf'); $this->addElement($docenergie, 'docenergie'); $docentretien = new Zend_Form_Element_File('docentretien'); $docentretien->setLabel('Contrat (P2) :') ->setRequired(true) ->addValidator('Size', false, $max_file_size) ->setMaxFileSize($max_file_size) ->addValidator('Count', false, 1) ->addValidator('Extension', false, 'pdf'); $this->addElement($docentretien, 'docentretien'); $docgarantie = new Zend_Form_Element_File('docgarantie'); $docgarantie->setLabel('Contrat (P3) :') ->setRequired(true) ->addValidator('Size', false, $max_file_size) ->setMaxFileSize($max_file_size) ->addValidator('Count', false, 1) ->addValidator('Extension', false, 'pdf'); $this->addElement($docgarantie, 'docgarantie'); $this->addElement( 'submit', 'submit', array( 'ignore' => true, )); //Enlever les decorateurs des champs cachés $elements = $this->getElements(); foreach ($elements as $elem) if ($elem instanceof Zend_Form_Element_Hidden) $elem->removeDecorator('label') ->removeDecorator('HtmlTag'); } public function setIdSite($idsite){ $hidden_idsite = $this->getElement('idsite'); $hidden_idsite->setValue($idsite); } }
Merci de votre aide
Hors ligne
Ou stocke tu les fichiers ?
Perso j'aurais rajouté un setDestination('NOMDETONCHEMIN') pour chaques champs FILE. Et j'aurais stocker seulement le nom du fichier dans la base . C'est peut être ce que tu as fais.??
Après je ne sais pas si cela marche comme sa quand tu as plusieurs fichiers a upload.
Hors ligne