Bonsoir, j'ai enfin réussi à renommer mes fichiers uploader à la voler
après des jours de sueurs à la lecture de la doc et des test intempestif j'ai pu renomer le fichier télécharger avant de l'envoyer au controller, et de l'enregister dans le bon endroit, j'ai une question simple (enfin je crois )
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 $monimage = new Zend_Form_Element_File('image'); $monimage -> setLabel("télécharger une image"); ->setDestination('path'); $nom_fichier->uploader->$monimage->getFileInfo(); $nouveau_nom->"miniature".$nom_fichier['image']['name']; $monimage->addFilter('Rename',$nouveau_nom); $this->addElement($monimage,'image');
comment effectuer cette tâche avec plusieurs upload on va dire 4 par exemple.
j'ai cette solution de répéter avec une boucle 4 fois le formulaire , en mettant évidemment 4 indices (que je n'ai pas testé, pour le moment je souhaite trouver la meilleur solution afin d'obtimiser mon temps)
ou j'ai vu que Zend a gentilement concocter une methode qui permet de faire 4 chose d'affiller:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 for ($i=0; $i <4;$i++) { $monimage[$i] = new Zend_Form_Element_File('image'); $monimage[$i] -> setLabel("télécharger une image[$i]"); ->setDestination('path'); $nom_fichier[$i->uploader->$monimage->getFileInfo(); $nouveau_nom[$i]->"miniature".$nom_fichier['image']['name']; $monimage[$i]->addFilter('Rename',$nouveau_nom); $this->addElement($monimage,'image'); }
comment je m'y prend pour renommer les 4 nom de fichier images ??
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 $monimage = new Zend_Form_Element_File('image'); $monimage -> setLabel("télécharger une image"); ->setDestination('path'); $nom_fichier->uploader->$monimage->getFileInfo(); $nouveau_nom->"miniature".$nom_fichier['image']['name']; $monimage->addFilter('Rename',$nouveau_nom); $monimage->setMultiFile(4); $this->addElement($monimage,'image');
dans la doc sur la partie ou il explique le setMultiFile(), il n'y a pas beaucoup d'explication
voici la page en question:
http://framework.zend.com/manual/fr/...dElements.html
j'ai essayer un tous petit est en ajoutant avant
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 Exemple #4 Définir plusieurs fichiers Créer un élément multifichier est identique à la création d'un élément unique. Appellez simplement setMultiFile() après que l'élément soit créé: $element = new Zend_Form_Element_File('foo'); $element->setLabel('Uploadez une image:') ->setDestination('/var/www/upload'); // s'assure qu'il y a un fichier au minimum, 3 au maximum $element->addValidator('Count', false, array('min' => 1, 'max' => 3)); // Limite à 100K $element->addValidator('Size', false, 102400); // seulement des JPEG, PNG, et des GIF $element->addValidator('Extension', false, 'jpg,png,gif'); // définit 3 éléments fichiers identiques $element->setMultiFile(3); $form->addElement($element, 'foo'); Vous avez maintenant 3 éléments d'upload de fichier identiques avec les mêmes paramètres. Pour obtenir le nombre de fichiers multiples défini, appellez simplement getMultiFile().
le fameu rename
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 $this->addElement($upl_big, 'image');
j'avais épérer d'avoir 4 fois le nom du fichier test, mais j'ai une belle erreur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 $monimage->addFilter('Rename','test');
d'un autre côté, c'est peut être normal puisque c'est un array, il a du ne pas savoir quel fichier renomer parmis les 4, j'aurai bien mis un $i quelque par mais ou? ou faire avencer une incrémentation? je ne pense pas que je suis le seul à tomber sur ce problème qui est peut être pour vous facile a résoudre.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Fatal error: Call to a member function addFilter() on a non-object in
si vous avez d'autre document qui développe multiple je suis toute oui
avant de réponde à ma question, dit moi si vous l'avez compris ??
je vous remercie d'avance d'avoir pris la penne de la lecture de ma question?
Partager