Script php donnant accès à un download , à combiner avec un htaccess

Script php donnant accès à un download , à combiner avec un htaccess - PHP - Programmation

Marsh Posté le 22-07-2003 à 12:09:07    

Sur un site, (et sur mon serveur en local ausi),
 
un script PHP demande le nom et le mail (et enregistre ça dans une base mysql), une fois ceci fait et une fois seulement il donne accès au téléchargement.
 
Seulement un petit malin peut entrer l'url pour y accéder.
 
J'ai mis deux protection.  
 
* index.php3 rend impossible le listage des fichiers et dossiers (mais y a peut être une faille), c'est une partie du script. Le programme à télécharger se situe dans un sous-dossier ... dont le nom est carrément pompé d'un mot de passe généré aléatoirement...
 
* dans le sous-dossier j'ai mis un .htaccess  (deny from all)
Et là c'est la protection de trop :D
 
Comment faudrait-il pour autoriser le dol depuis le script?
 

Reply

Marsh Posté le 22-07-2003 à 12:09:07   

Reply

Marsh Posté le 22-07-2003 à 12:10:12    

J'ai repéré ceci, mais je suis pas sûr que ce soit adaptable.
 
http://forum.hardware.fr/forum2.ph [...] h=&subcat=


Message édité par cablator le 22-07-2003 à 12:10:48
Reply

Marsh Posté le 22-07-2003 à 16:33:49    

[:cablator]


---------------
Viva la Revolucion ©
Reply

Marsh Posté le 22-07-2003 à 17:40:23    

tu laisses ton htaccess et tu fais un readfile http://fr.php.net/manual/fr/function.readfile.php sur le fichier à télécharger.

Reply

Marsh Posté le 22-07-2003 à 19:18:26    

tu envoies le header avec le content-type qui va bien suivant le type de fichier
 
et tu fais un echo du contenu renvoyé par la fonction readfile
 
c'est assez clair ou bien tu veux plus de détails ?

Reply

Marsh Posté le 22-07-2003 à 19:26:27    

pour une image gif par exemple
 

Code :
  1. fopen .....
  2. readfile ....
  3. fclose ....
  4.   header("Content-type: application/gif" );
  5.   header("Content-Disposition: attachment; filename=monFichier.gif" );
  6. echo le contenu du fichier lu

Reply

Marsh Posté le 22-07-2003 à 19:27:40    

:non: , readfile retourne directement le contenu du fichier vers la sortie standard

Reply

Marsh Posté le 22-07-2003 à 19:34:11    

Donc on rajoute ça au  
script php

Citation :

int readfile ( string filename [, int use_include_path])


 
et on laisse le htaccess en deny from all


Message édité par cablator le 22-07-2003 à 19:34:42

---------------
Viva la Revolucion ©
Reply

Marsh Posté le 22-07-2003 à 21:17:51    

demain je te file le bout de code que j'ai deja fait pour ça, je l'ai pas ici

Reply

Marsh Posté le 22-07-2003 à 21:39:17    

ratibus a écrit :

demain je te file le bout de code que j'ai deja fait pour ça, je l'ai pas ici


Merci :)

Reply

Marsh Posté le 22-07-2003 à 21:39:17   

Reply

Marsh Posté le 22-07-2003 à 23:49:08    

ratibus a écrit :

demain je te file le bout de code que j'ai deja fait pour ça, je l'ai pas ici


Code :
  1. header("Content-disposition: attachment; filename=$url" );
  2. header("Content-Type: application/force-download" );
  3. header("Content-Transfer-Encoding: binary" );
  4. header("Content-Length: ".filesize($url));
  5. header("Pragma: no-cache" );
  6. header("Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0" );
  7. header("Expires: 0" );
  8. readfile($url);


Message édité par harrysauce le 22-07-2003 à 23:49:44
Reply

Marsh Posté le 23-07-2003 à 00:32:12    

[:drapo]
 
je voulais faire la meme chose  :whistle:  
 
alors merci, je vais pouvoir faire la faignasse:jap:


---------------
IVG en france
Reply

Marsh Posté le 24-07-2003 à 11:47:53    

Marche po.
 
J'ai placé ça tel quel juste avant le dernier
 
?>  (de php)
 
et après il y a
 
 Pour télécharger la version de démonstration cliquer
   <A href="dossier/fichier.exe"> télécharger maintenantt</A>

Reply

Marsh Posté le 24-07-2003 à 12:09:09    

cablator a écrit :

Marche po.
 
J'ai placé ça tel quel juste avant le dernier
 
?>  (de php)
 
et après il y a
 
 Pour télécharger la version de démonstration cliquer
   <A href="dossier/fichier.exe"> télécharger maintenantt</A>

:heink:  
comment veux-tu que ca marche alors????? :sarcastic:  
 
 
Fait un copier coller du code que j'ai posté au dessus et met le dans un fichier appelé dl.php (par exemple).
Le lien pour télécharger ton fichier sera alors :
<a href="dl.php?url=fichier.exe">Télécharger le fichier</a>

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed