liou13 Posté 30 Juillet 2008 Posté 30 Juillet 2008 Bonjour, je suis un peu bloqué pour le développement d'un site. Dans ce site une fois logué on peut accéder à des fichier word pour les télécharger en cliquant sur un lien. Par contre si on copie/colle l'adresse des fichier on peut toujours les télécherger même sans se logué. Du coup je voudrais savoir comment faire pour que l'on ne puisse télécharger ces fichier que si on est logué. Merci du coup de main.
blman Posté 30 Juillet 2008 Posté 30 Juillet 2008 En fait, une fois l'utilisateur logué, tu lui génère forcément une session (soit via php, soit via cookie, soit en base de données, ...) peu importe. Donc tu peux codé une page de téléchargement ex: download.php Par exemple, pour télécharger pouic.doc, tu peux passer download.php?item=pouic.doc donc : 1- sur cette page, tu vérifie que l'utilisateur est logué grâce à la session 2- tu vérifie que le doc envoyé par le paramètre existe bien 3- si tout est ok, tu lui balance le doc via les headers : <?header("Content-Type: application/force-download; name=\"$item\"");header("Content-Transfer-Encoding: binary");header("Content-Disposition: attachment; filename=\"$item\"");header("Expires: 0");header("Cache-Control: no-cache, must-revalidate");header("Pragma: no-cache");readfile("chemin/".$item);exit();?>
Dan Posté 30 Juillet 2008 Posté 30 Juillet 2008 Il faudrait aussi, en supplément à ce que te dit blman, que les documents ne soient pas dans l'arborescence web... donc que le répertoire les contenant ne soit pas accessible par le web.
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant