RockmanX
Messages postés109Date d'inscriptiondimanche 23 décembre 2001StatutMembreDernière intervention26 octobre 2007
-
6 nov. 2003 à 23:25
nautilus99
Messages postés661Date d'inscriptionvendredi 26 septembre 2008StatutMembreDernière intervention18 septembre 2009
-
1 sept. 2009 à 11:54
Salut!
Bon alors en fait ma question elle est pas trop php, mais je voulais savoir si quelqu'un a une idée:
Je dois faire un site duquel on doit downloader des fichiers, mais il faut que ces fichier soient protégés par un login et un mot-de-passe.
Le problème c'est que si quelqu'un entre par bol dans sa barre:
www.monserveur.fr/monfichier.txt et ben il peu le downloader...
comment faire pour empêcher ça????
Merci d'avance
siwil
Messages postés23Date d'inscriptionlundi 4 août 2008StatutMembreDernière intervention 2 septembre 2009 31 août 2009 à 14:13
Salut les amis !!!
Ma question a deux volets et j'ai urgement besoin de votre aide,en fait je travaille sur le upload et le download entre deux machines en rx.
-premierement j'ai pu recuperer les fichiers du disque dur serveur pr les afficher ds une listebox client,ceci pr faciliter le telechargement aux utilisateurs,mais lorsque je fais ceci :
$fich=$_POST['fact'];
echo(" telecharger ");
Je constate que ds ma variable $fich le nom de fichier ne s'y trouve pas et la preuve en est que la fenetre download qui s'affiche devant moi ne me montre pas le nom du fichier.
J'aimerai savoir quoi faire a se niveau.
-Deuxiemement: lorsque je remplace "$_POST['fact']" par le nom d'un fichier du disque dur serveur cad :
$fich= 'Accueil.pdf';
le telechargement se fait normalement pr tous les fichiers sauf ceux de la famille office,voici mon fichier download.php:
<?php
$dir='C:\willy\*';
if (isset($_REQUEST["file"])) {
$file=$dir.$_REQUEST["file"];
header("Content-type: application/force-download");
header("Content-Transfer-Encoding: Binary");
header("Content-length: ".filesize($file));
header("Content-disposition: attachment; filename="".basename($file).""");
readfile("$file");
} else {
echo "No file selected";
}
?>
siwil
Messages postés23Date d'inscriptionlundi 4 août 2008StatutMembreDernière intervention 2 septembre 2009 1 sept. 2009 à 11:33
Salut nautilus!!
merci pour ta reponse.
En fait j'utilise une balise
<select> comme ceci:
<select name= "fact">
quelqu'un d'autre m'a conseille de faire :
$fich= $_GET['fact'];
mais jusque la rien,je ne sais pas si c parsceque les noms de fichier viennent directement du disque dur serveur.
quand tu parles de print_r ou var_dump sur le POST tu veux dire quoi exactement.
stp explique-moi.
Vous n’avez pas trouvé la réponse que vous recherchez ?
nautilus99
Messages postés661Date d'inscriptionvendredi 26 septembre 2008StatutMembreDernière intervention18 septembre 20091 1 sept. 2009 à 11:54
Bonjour,
Ton formulaire doit transmettre le nom du chier, soit via la méthod epost soit le get...
Donc dans ton script d etraitement, tu dois retrouver quelque part ce nom, soit en $_POST, soit en $_GET, ou encore en $_REQUEST.
Donc en faisant un dump de ces tableaux pour debugguer, tu devrais t'apercevoir que ton formulaire ne transmet pas le nom, ou pas où toi tu penses qu'il se trouve.