Houbadobba |
Le 22/06/2007 Ã 15:57 |
|
|
comment créer un lien a partir duquel on peut télécharger un fichier,j'ai vu beaucoup de tutorial mais ils parlent tous d'un formulaire de téléchargement. est ce quelqu'un connait comment creer un lien qui permet le téléchargement? |
Marculinos |
Le 22/06/2007 Ã 21:05 |
|
 Viconaute Modérateur |
 S'il vous plaît... |
Endiku |
Le 22/06/2007 Ã 21:43 |
|
|
Bonjour,
je ne crois pas qu'un simple lien puisse marcher.
Voici le code d'un petit PHP qui fait a la fois le formulaire (marron) et le upload (vert), si ca peut aider. Tout repose sur 1) un formulaire method="post" et enctype="multipart/form-data" 2) une balise '<input>' de type 'file' et qui s'affiche avec le bouton 'parcourir' 3) la variable globale PHP appelee $_FILES qui recoit le nom du fichier telechargé.
<?
function f_upload(){ global $_FILES; # 'fichier' shall be the name of the '<input>' balise $l_name='fichier'; if (isset($_FILES[$l_name]['name'])) { if ($_FILES[$l_name]['name']!='') { # Get the file name of the image to be uploaded $l_imgBaseName=$_FILES[$l_name]['name']; $l_imgSrcFileName=$_FILES[$l_name]['tmp_name'];
# Target path of the image file on the Web Site $l_imgSiteFileName='upload_dir/'.$l_imgBaseName;
# Move the image file from the Apache temporary folder to the Web Site if (!move_uploaded_file($l_imgSrcFileName, $l_imgSiteFileName)) { print 'Fail to upload.!'; } # if move failed
# Double check that no error occurs during the upload # by checking that the uploaded file 1) exists 2) is not empty if ((!file_exists($l_imgSiteFileName)) || (filesize($l_imgSiteFileName)<=0)) { print 'Error!'; } else { print 'File uploaded!'; } } # not '' } # isset }
function f_displayForm() { print '<form action="test_upload.php" method="post" enctype="multipart/form-data">'; print 'Image:'; print '<input name="fichier" type="file" />'; print '<br />'; print '<input type="submit" value="Telecharger" />'; print '</form>'; }
# Test if the form shall be displayed or a file is to be uploaded.. if (empty($_FILES)) { f_displayForm(); } else { f_upload(); }
?>
Endiku |
Anthony |
Le 23/06/2007 Ã 18:55 |
|
 Admin |
Salut,
Un truc tout simple :
lorsque le visiteur consultera ton fichier "page.php", il téléchargera le fichier que tu auras mis dans le code :
<?php
     header('Content-Length: '.filesize('tonfichier.extension'));
     header('Content-disposition: attachment; filename=ici le nom que tu souhaites donner au fichier qui sera téléchargé par l'utilisateur);
     header('Content-Type: application/force-download');
     readfile('tonfichier.extension');
?>
Bref après à toi de faire un système dynamique pour que le fichier varie en fonction d'un paramètre dans l'URL par exemple.
a + -- 
|
Thomas |
Le 24/06/2007 Ã 00:24 |
|
 Tueur de chet maïs |
Bondour  , Heu les gars ... <a href="fichier">Fichier</a> ça marche aussi lol XD -- DOUDA ! RONCONE NOUNA NOÏ ! RONCONE NOUNA NOÏ ! |
Endiku |
Le 24/06/2007 Ã 00:38 |
|
|
Bonjour,
je crois qu'il faut mieux cerner la question initiale de Houbadobba , et surtout clarifier le terme 'telecharger':
s'agit il de 1)- telecharger du serveur vers le poste client (download) 2)- ou telecharger du poste client vers le serveur (upload)
Dans ma reponse, j'ai presumé qu'il s'agissait de repondre à un telechargement pour upload car Houbadobba faisait allusion à un formulaire.
Endiku |
Glougloute |
Le 30/06/2007 Ã 13:58 |
|
 I love VIC |
Anthony, est-ce que le readfile est conseillé ? -- Je vous aiderai dans la mesure du possible ;) |
Anthony |
Le 30/06/2007 Ã 14:57 |
|
 Admin |
? en quoi ne le serait-il pas ? -- 
|
Glougloute |
Le 27/07/2007 Ã 07:40 |
|
 I love VIC |
Il me semble avoir lu que ca bouffait le CPU du server... -- Je vous aiderai dans la mesure du possible ;) |