Protection téléchargement de fichier
5 messages • Page 1 sur 1
Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics
Protection téléchargement de fichier
Salut à tous,
J'ai des pages protégées par login et mot de passe stockés dans un BDD et le tout est stocké dans une session quand le visiteur est logué.
Sur une de ces pages protégées, il y a un lien vers un fichier à télécharger.
Ma question est: comment protéger mon fichier ?
Pour l'instant il se trouve dans un répertoire protégé par .htaccess mais du coup il faut s'identifier à nouveau.
Sinon, j'ai entendu parler d'une solution avec la fonction readfile(); (pour pouvoir cacher le chemin de mon fichier) mais je n'ai pas réussi à mettre ça en place avec les tutos que j'ai pu trouver. Vous l'aurez deviné, je ne suis pas vraiment une brute en PHP.
Si quelqu'un peut m'aiguiller, ce serait cool.
Merci d'avance de votre aide.
J'ai des pages protégées par login et mot de passe stockés dans un BDD et le tout est stocké dans une session quand le visiteur est logué.
Sur une de ces pages protégées, il y a un lien vers un fichier à télécharger.
Ma question est: comment protéger mon fichier ?
Pour l'instant il se trouve dans un répertoire protégé par .htaccess mais du coup il faut s'identifier à nouveau.
Sinon, j'ai entendu parler d'une solution avec la fonction readfile(); (pour pouvoir cacher le chemin de mon fichier) mais je n'ai pas réussi à mettre ça en place avec les tutos que j'ai pu trouver. Vous l'aurez deviné, je ne suis pas vraiment une brute en PHP.
Si quelqu'un peut m'aiguiller, ce serait cool.
Merci d'avance de votre aide.
-

tom_pascal - WRInaute impliqué

- Messages: 278
- Inscription: Lun Nov 17, 2003 13:58
Bonjour,
Pour ne pas avoir de souci avec le readfile, j'avais vu que fread était recommandé.
Pour ma part, je procède ainsi :
Pour ne pas avoir de souci avec le readfile, j'avais vu que fread était recommandé.
Pour ma part, je procède ainsi :
- Code: Tout sélectionner
if ($_SESSION["ok_le_gars_est_connecte"]){
$filename="un_repertoire_secret/fichier_telecharge.zip";
$apparencename="archive.zip";
$filesize=filesize($filename);
header("Pragma: public");
header("Expires: 0"); // set expiration time
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Content-Type: application/zip");
header("Content-Length: ".$filesize);
header("Content-Disposition: inline; filename=".$apparencename);
header("Content-Transfer-Encoding: binary");
//Can't use readfile() due to poor controlling of the file download.
//(IE have this problems)...
//readfile($filename);
//use fopen() instead of readfile...
$fp = fopen($filename, 'rb');
$zip_buffer = fread($fp, $filesize);
fclose ($fp);
//sleep(1);
print $zip_buffer;
}
Salut tom_pacal,
Merci pour ton code c'est exactement ce que je cherche à faire et ça marche nickel.... sur Firefox uniquement.
Internet explorer ne l'entend pas de la même oreille et me propose de télécharger un fichier qui s'appelle: "le-nom-de-la-page". Il ne met même pas d'extension.
Sais tu d'où ça peut venir ?
As tu le même problème ?
Je n'ai pourtant rien changé à ton code.
En tout cas, merci de ton aide. Je vais continuer mes recherches dans cette direction.
Merci pour ton code c'est exactement ce que je cherche à faire et ça marche nickel.... sur Firefox uniquement.
Internet explorer ne l'entend pas de la même oreille et me propose de télécharger un fichier qui s'appelle: "le-nom-de-la-page". Il ne met même pas d'extension.
Sais tu d'où ça peut venir ?
As tu le même problème ?
Je n'ai pourtant rien changé à ton code.
En tout cas, merci de ton aide. Je vais continuer mes recherches dans cette direction.
Salut à tous,
J'ai trouvé d'où vient mon erreur.
j'avais mis
$apparencename="un-repertoire/archive.zip";
au lieu de
$apparencename="archive.zip";
Erreur d'inattention qui m'a valu quelques heures de recherches.
Qu'est ce que ça peut être ingrat le PHP !!!
Merci encore à tom_pascal de sont aide.
J'ai trouvé d'où vient mon erreur.
j'avais mis
$apparencename="un-repertoire/archive.zip";
au lieu de
$apparencename="archive.zip";
Erreur d'inattention qui m'a valu quelques heures de recherches.
Qu'est ce que ça peut être ingrat le PHP !!!
Merci encore à tom_pascal de sont aide.
-

tom_pascal - WRInaute impliqué

- Messages: 278
- Inscription: Lun Nov 17, 2003 13:58
content d'avoir pu t'être utile 
5 messages • Page 1 sur 1
Formation recommandée sur ce thème :
Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.
Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.
Lectures recommandées sur ce thème :
- Google Puffin : Google cherche sur votre disque dur
- 3ème partie de l'article .htaccess : les réécritures conditionnelles
- Nouvelle version de GoogleStats : v1.1
- Article sur le fichier .htaccess
- La barre d'outils Alexa pour Firefox
- Déclarer son fichier sitemap dans le fichier robots.txt
- Sortie de GoogleStats v2.01
- Télécharger Google Chrome en français (téléchargement gratuit)
- Suite de l'article sur le fichier .htaccess : l'URL rewriting
- Du nouveau dans le Centre pour Webmasters de Live Search
- Fichier Vidéo chargement long
- Protection fichier
- protection fichier par htaccess
- Protection d'un fichier par mot de passe
- Protection d'un seul fichier avec un .htaccess
- probleme avec fichier robots.txt fichier bloquer
- upload de fichier via PHP : taille variable du fichier créé
- Rewriting de fichier image vers fichier de script
- Vitesse de chargement ?
- Chargement de mes pages
- lenteur chargement de page
- problème de chargement de page
- image de chargement (loading)
- Chargement tres long ...
- Chargement et refresh sur IE
Consultez la description détaillée des produits ou services de Google suivants : Google Grants
Qui est en ligne
Utilisateurs parcourant ce forum: Julia41 et 1 invité

le forum