Précédent   Forum des professionnels en informatique > PHP > Langage > Sessions
Sessions Forum d'entraide sur les sessions avec PHP. Avant de poster -> FAQ sessions, Cours sessions et Sources sécurité
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 12/12/2006, 15h30   #1
Invité de passage
 
Inscription : septembre 2005
Messages : 6
Détails du profil
Informations forums :
Inscription : septembre 2005
Messages : 6
Points : 1
Points : 1
Envoyer un message via Skype™ à elmohib1
Par défaut Restreindre l'accés directe au photos d'une gallerie

Hi,

Bonjour tt le monde, c'est mon premier message sur ce forum..
J'espère avoir une réponse a une question qui me fait galérer!

Ce que je veux faire c'est limiter l'acces aux photos d'un dossier de façon a ce qu'on puisse les afficher dans une page web, toute en
empechant l'accès via leurs adresse sur le serveur.

exemple: www.monsite.com/gallerie/image1.jpg : ne doit pas donner l'image
mais l'image peut s'afficher sur une liste selon des conditions données.

Merci d'avance.
elmohib1 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/12/2006, 10h11   #2
Modérateur
 
Avatar de mathieu
 
Inscription : juin 2003
Messages : 4 893
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 4 893
Points : 4 466
Points : 4 466
Citation:
Envoyé par elmohib1
exemple: www.monsite.com/gallerie/image1.jpg : ne doit pas donner l'image
ce que tu veux faire n'est pas possible, dans le code html l'image est appelée par l'URL que tu as donné donc si tu empêche d'accéder à l'URL l'image ne s'affichera pas
ce que tu peux faire par exemple, c'est donner l'accès à certaines images à l'aide d'un nom d'utilisateur et un mot de passe
__________________
Modérateur PHP
mathieu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/12/2006, 13h49   #3
Invité de passage
 
Inscription : septembre 2005
Messages : 6
Détails du profil
Informations forums :
Inscription : septembre 2005
Messages : 6
Points : 1
Points : 1
Envoyer un message via Skype™ à elmohib1
La structure que j'ai est la comme suite:
Gallerie/IMG100_icon.jpg (photo icone)
Gallerie/IMG100.jpg (photo normal)

je veux pouvoir afficher les icone dans la page de liste et controller l'affichage des photo réel selon des conditons! (les afficher si les conditions sont vérifié ou y restreindre l'acces sinon)

y a t-il moyen de donner à un fichier php par exemple les données d'authentification htaccess/htpasswd, pour qu'il puisse lire les fichiers d'un dossier protégé par exemple?

Avez d'autre proposition pour implémenter un tel systèm?

Merci.
elmohib1 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/12/2006, 16h50   #4
Modérateur
 
Avatar de mathieu
 
Inscription : juin 2003
Messages : 4 893
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 4 893
Points : 4 466
Points : 4 466
Citation:
Envoyé par elmohib1
je veux pouvoir afficher les icone dans la page de liste et controller l'affichage des photo réel selon des conditons! (les afficher si les conditions sont vérifié ou y restreindre l'acces sinon)
quelles sont ces conditions ?

Citation:
Envoyé par elmohib1
y a t-il moyen de donner à un fichier php par exemple les données d'authentification htaccess/htpasswd, pour qu'il puisse lire les fichiers d'un dossier protégé par exemple?
oui c'est possible
le plus pratique est de mettre le dossier protégés en dehors des répertoires web et ensuite le script PHP peut les lire et l'afficher si les conditions sont remplies
__________________
Modérateur PHP
mathieu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/12/2006, 09h54   #5
Invité de passage
 
Inscription : septembre 2005
Messages : 6
Détails du profil
Informations forums :
Inscription : septembre 2005
Messages : 6
Points : 1
Points : 1
Envoyer un message via Skype™ à elmohib1
Par défaut Repertoire gallerie hors repertoire web! comment?

- Les conditions sont l'ouverture d'une session client(être inscrit comme client activé).
- Pour votre solution, j'ai pas bien compris comment la réaliser..., j'ai déjà vu quelque part et tester, mais il semble que le script PHP n'a pas pu avoir accès au photos du dossier qu'était hors repertoire web.

Voila la structure que j'ai mis comme test:
www/liste.php
gallerie/image.jpg

www étant le répertoir web (racine)!
dans la liste je donne aux paths des photos par exemple "../gallerie/Image.jpg", mais rien ne s'affiche, même si le dossier gallerie n'est pas protégé a ce moment.

Pouvez vous m'expliquer comment mettre en place un tel mécanisme?

Merci
elmohib1 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/12/2006, 11h48   #6
Modérateur
 
Avatar de mathieu
 
Inscription : juin 2003
Messages : 4 893
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 4 893
Points : 4 466
Points : 4 466
ça fonctionne avec le répertoire "gallerie" au même niveau que le répertoire "www"
en gros tu auras un fichier lireImage.php dans ton répertoire www pour la vérification des images. Donc dans ton code html tu auras quelque chose comme ça :
Code :
<img src="lireImage.php?image=arbre.jpg" alt=""/>
et le script lireImage.php ferra les opérations suivantes :
- vérifier dans le session PHP que le client est bien connecté
- vérifier que le paramètre image est bien valide (pour empêcher les appel du genre "lireImage.php?image=../www/mysql.php" qui permetterai à un pirate de récupérer les codes d'accès à ta base de données par exemple)
- si tout est bon, lecture du fichier du répertoire "gallerie" et affichage
__________________
Modérateur PHP
mathieu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/12/2006, 14h57   #7
Invité de passage
 
Inscription : septembre 2005
Messages : 6
Détails du profil
Informations forums :
Inscription : septembre 2005
Messages : 6
Points : 1
Points : 1
Envoyer un message via Skype™ à elmohib1
C'est bien la solution que j'avais mis en place!
Avec la fonction readfile(), pour lire les images,
Mais j'ai un petit problème qui est la lenteur de téléchargement!
Est-ce normal? y-t-il un moyen pour mieux faire avec cette méthode?

Il me reste à ce que je mette le dossier gallerie au même niveau que www pour voir si le script aura accès à ce niveau ou pas!

Merci Mathieu!!
elmohib1 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/12/2006, 15h10   #8
Modérateur
 
Avatar de mathieu
 
Inscription : juin 2003
Messages : 4 893
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 4 893
Points : 4 466
Points : 4 466
Citation:
Envoyé par elmohib1
Mais j'ai un petit problème qui est la lenteur de téléchargement!
Est-ce normal? y-t-il un moyen pour mieux faire avec cette méthode?
le script PHP prend souvent moins d'une seconde pour s'exécuter donc s'il y a un délai de téléchargement tu aura presque le même avec un accès direct à l'image

Citation:
Envoyé par elmohib1
Il me reste à ce que je mette le dossier gallerie au même niveau que www pour voir si le script aura accès à ce niveau ou pas!
oui comme ça tu sera sur que le répertoire "gallerie" n'est pas accessible directement
__________________
Modérateur PHP
mathieu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/12/2006, 16h09   #9
Invité de passage
 
Inscription : septembre 2005
Messages : 6
Détails du profil
Informations forums :
Inscription : septembre 2005
Messages : 6
Points : 1
Points : 1
Envoyer un message via Skype™ à elmohib1
Citation:
le script PHP prend souvent moins d'une seconde pour s'exécuter donc s'il y a un délai de téléchargement tu aura presque le même avec un accès direct à l'image
Oui c'est bien ca, mais imagine avec 16 image sur la liste, plus 16 image detail (400x200) qui s'affiche apres le survol d'une icone (130x170)!!

Ce qui rend le téléchargement un peu lent!
elmohib1 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/12/2006, 17h34   #10
Invité de passage
 
Inscription : septembre 2005
Messages : 6
Détails du profil
Informations forums :
Inscription : septembre 2005
Messages : 6
Points : 1
Points : 1
Envoyer un message via Skype™ à elmohib1
La solution que j'ai adopté pour palier à la lenteur de téléchargment des photos, c'est de mettre les photos small et detail dans un dossier web-accesible, donc je les affiche directment sans passer par la fonction readfile et le script php!

et les photos originaux, je les enregistre dans un dossier protégé et je les récupère via le script php!

Merci
elmohib1 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 23h40.


 
 
 
 
Partenaires

Hébergement Web