Récupérer un fichier précédement uploader

Résolu/Fermé
leoetevan Messages postés 110 Date d'inscription mercredi 18 février 2009 Statut Membre Dernière intervention 16 juillet 2012 - 9 févr. 2010 à 14:36
leoetevan Messages postés 110 Date d'inscription mercredi 18 février 2009 Statut Membre Dernière intervention 16 juillet 2012 - 9 févr. 2010 à 17:02
Bonjour,

Voilà, j'ai réussit à créer un champ texte accompagné d'un bouton "Parcourir". Ca fonctionne très bien. J'arrive à copier le fichier dans un dossier de mon choix et à enregistrer le nouveau chemin du fichier dans ma base.
Maintenant, j'ai une autre page ou je voudrais ressortir le nom du fichier puis soit:
- rendre le nom du fichier tel un lien qui permettrait de le télécharger
- avoir le nom du fichier puis à coté avoir un bouton du genre "Télécharger ce fichier"

Auriez vous une idée pour faire ça? Merci
A voir également:

13 réponses

or3li3n Messages postés 193 Date d'inscription jeudi 3 septembre 2009 Statut Membre Dernière intervention 22 juin 2011 6
9 févr. 2010 à 14:38
Utilise PHP pour ca . . . et les header application
0
leoetevan Messages postés 110 Date d'inscription mercredi 18 février 2009 Statut Membre Dernière intervention 16 juillet 2012 2
9 févr. 2010 à 14:41
oui oui excuse moi. Je suis dans une création de site et j'utilise donc le php. Désolé j'avais oublié de le mentionner.

Mais pourrais tu m'expliquer comment je peux faire? Je suis encore novice en la matière. Je ne sais même pas se que sont les header applications
0
or3li3n Messages postés 193 Date d'inscription jeudi 3 septembre 2009 Statut Membre Dernière intervention 22 juin 2011 6
9 févr. 2010 à 14:41
header("'Content-type:image");
header("Content-Disposition: attachment; filename=$name_file;");
readfile(chemin de ton fichier);
0
leoetevan Messages postés 110 Date d'inscription mercredi 18 février 2009 Statut Membre Dernière intervention 16 juillet 2012 2
9 févr. 2010 à 14:56
Je viens de trouver ce code sur un autre site. Peux tu me dire si c'est valable?
Et si oui, je le met ou ce code? tout dans le body de ma page??

<?
if($dwn=$_GET["dwn"]) {

$dwn = str_replace("../","",$dwn);

// ob_clean(); // Vide le buffer (v >= 4.2)

// Dialogue de téléchargement
header("content-type: application/octet-stream");
// seulement pour application/octet-stream !
header("Content-Disposition: attachment; filename=".$dwn);

// Ouvrir avec MSWord
// header("content-type: application/msword");
// Ouvrir avec MSExcel
// header("content-type: application/vnd.ms-excel");
// Ouvrir en Text
// header("content-type: text/plain");

// voir aussi http://dev.nexen.net/scripts/details.php?scripts=354

flush(); // Envoie le buffer

readfile($dwn); // Envoie le fichier

} else { ?>

<A href="download.php?dwn=download.php">Test</A>

<? } ?>
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
or3li3n Messages postés 193 Date d'inscription jeudi 3 septembre 2009 Statut Membre Dernière intervention 22 juin 2011 6
9 févr. 2010 à 14:59
Ce que je t'ai donné c'est un bout de fonction permettant de télécharger une image dont le chemin est a mettre dans le readfile().
0
or3li3n Messages postés 193 Date d'inscription jeudi 3 septembre 2009 Statut Membre Dernière intervention 22 juin 2011 6
9 févr. 2010 à 15:10
Le code que tu me montre est destiné a ouvrir des fichiers par une application présente chez le clien
t
0
leoetevan Messages postés 110 Date d'inscription mercredi 18 février 2009 Statut Membre Dernière intervention 16 juillet 2012 2
9 févr. 2010 à 15:42
Se que je ne comprend pas, c'est comment ça fonctionne?? Je met ce code à quel niveau de ma page? Je peux le mettre dans l'argument onclick d'un bouton??

Je ne sais pas quoi en faire de ton code. Explique moi s'il te plait. Merci
0
or3li3n Messages postés 193 Date d'inscription jeudi 3 septembre 2009 Statut Membre Dernière intervention 22 juin 2011 6
9 févr. 2010 à 15:48
Tu fais <a href="la_page_avec_le_code_que_j'ai_donné.php" >Download</a>

Et ca va ouvrir une fenêtre demandant si le client veut enregistrer le fichier !
0
leoetevan Messages postés 110 Date d'inscription mercredi 18 février 2009 Statut Membre Dernière intervention 16 juillet 2012 2
9 févr. 2010 à 16:23
ah ok!! je comprend mieux.

Mais ce n'est pas tout à fait se que je voudrais.

- Je peux avoir plusieurs types de fichier (doc, xls, txt, odt, ppt ou pps)
- Je ne voudrais pas avoir à ouvrir une nouvelle page
- Je voudrais permettre le choix d'ouvrir le fichier ou de le télécharger un peu comme sur la plupart des sites d'ailleurs

C'est pour ça que le code que je t'ai montrer me paraissait pas mal sauf que je n'arrive pas à m'en servir. Sur le site ou je l'ai pris, il y a un lien test et c'est exactement se que je voudrais.

ce test est à cette page
http://www.asp-php.net/espace/didier/scripts/download/test.php
0
or3li3n Messages postés 193 Date d'inscription jeudi 3 septembre 2009 Statut Membre Dernière intervention 22 juin 2011 6
9 févr. 2010 à 16:38
Alors tu reprends mon code mais tu change le premier header et tu y met le type que tu souhaite.


Si C un fichier word alors tu met :
header("content-type: application/msword");
header("Content-Disposition: attachment; filename=$name_file;");
readfile(chemin de ton fichier);

Excel :
header("content-type: application/vnd.ms-excel");
header("Content-Disposition: attachment; filename=$name_file;");
readfile(chemin de ton fichier);
0
leoetevan Messages postés 110 Date d'inscription mercredi 18 février 2009 Statut Membre Dernière intervention 16 juillet 2012 2
9 févr. 2010 à 16:52
Ok je te remercie.

Une autre petite question si ça te dérange pas, le chemin de mon fichier est du type:

/dossier1/dossier2/dossier3/nomDuFichier.doc

Comment je fais pour extraire le nom du fichier pour pouvoir l'afficher ensuite sans que l'utilisateur puisse voir toute l'arborescence?

Tu aurais une idée?

Et merci pour l'autre problème
0
or3li3n Messages postés 193 Date d'inscription jeudi 3 septembre 2009 Statut Membre Dernière intervention 22 juin 2011 6
9 févr. 2010 à 16:59
Tu fais un substr()
0
leoetevan Messages postés 110 Date d'inscription mercredi 18 février 2009 Statut Membre Dernière intervention 16 juillet 2012 2
9 févr. 2010 à 17:02
ok. merci beaucoup pour toute ces infos
0