Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Bonjour!
j'amerais télécharger un fichier dépuis mon hebergeur, mais je n'arrive pas trouver la bonne astuce.
$tmp='Ben.jpg'; $fullPath = getcwd().'/download/'.$tmp; $this->telecharge( $fullPath);
il ne fonctionne bien pour ce cas de figure, mais n'ayant pas trouver une methode qui me permet de stocker le contenu d'un fichier autre que jpg dans une base de donnée, j'ai opté stocher le fichier dans un repertoire et enregistrer le nom du fichier dans la base.
Lors de la procedure de transfert de fichier vers le serveur, via un formulaire, je stocker le nom du fichier dans la base de donnée et le recupere via la fonction fichier();
$filename=$this->fichier(); // recupère le nom du fichier stocker dans la base $fullPath = getcwd().'/download/'.$filename; $this->download_file($fullPath);
le fichier est telecherger mais endommagé, je ne peux l'ouvrir. mon hebergeur est sous UNIX
Merci!
Dernière modification par Angilbeau (12-07-2012 16:56:50)
Hors ligne
Ton fichier endommagé, ce serait pas la version temporaire en mémoire du fichier avant d'avoir fait la réelle réception sur le serveur?
Regardes la méthode "receive()" du module Zend_File_Transfer:
http://framework.zend.com/manual/fr/zen … ction.html
Hors ligne
Merci!
j'ai essayé la methode receive(), le fichier est bien reçu côté serveur. il exite bien mon fichier mais mon souci reside au niveau du chemin d'acces
$upload = new Zend_File_Transfer(); $files = $upload->getFileInfo(); $fichier = $upload->getFileName(); $tmp=$upload->receive();
j'ai bien tous les informations concernant mon fichier
je stocker le nom du fichier dans la base
$tmp='Ben.jpg'; $fullPath = getcwd().'/download/'.$tmp; $this->telecharge( $fullPath);
là il foncctionne bien
mais le même venant de ma base me renvoi un fichier endommagé
$filename=$this->fichier(); // recupère le nom du fichier stocker dans la base $fullPath = getcwd().'/download/'.$filename; $this->download_file($fullPath);
$filename='Ben.jpg' mais issue de ma base.
je suis sous linux
Hors ligne