IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Création de dossiers pour stocker des images et gestion des droits


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Avril 2011
    Messages
    660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 660
    Par défaut Création de dossiers pour stocker des images et gestion des droits
    Bonjour,

    J'aimerais que vous m’éclaireriez de vos lumières par rapport à ma problématique.

    J'ai un script qui permet de créer un article. Il est possible d'ajouter des images à cet article. Un outil permet de les envoyer sur le serveur et de créer des miniatures.

    L'objectif est de créer un dossier par utilisateur (renommé par son id) puis des sous dossiers par catégorie d'article. Dans les catégories d'article, on pourrait alors créer un dossier par article qui pourrait porter le nom de l'identifiant de l'article.

    Cela permettra à l'utilisateur d'ajouter des photos dans le même dossier afin de modifier l'article sans se demander dans quel dossier il doit envoyer les photos et/ou récupérer celles qu'il a déjà envoyées.

    La question est la suivante : Comment empêcher un utilisateur d'aller fouiner dans les dossiers des autres utilisateurs ?

    Par avance, merci de votre aide.

  2. #2
    Expert confirmé
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Par défaut
    Hello

    Une solution pourrait être d'interdire l'accès direct au répertoire en ajoutant une règle dans un .htaccess (voir Order Deny,Allow) et de ne charger les images qu'au travers de script PHP qui, dans la foulée, vérifieraient les droits du membre sur l'image.

    Voici comment procéder à l'affichage de l'image en PHP:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <?php
    header('Content-type:image/jpg');
    readfile('image.jpg');

  3. #3
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Avril 2011
    Messages
    660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 660
    Par défaut
    Bonjour,

    Merci pour votre réponse.

    Comment tester que l'image appartient à l'utilisateur ? Avec readfile() ?

    Il faudrait (à mon avis) juste interdire les dossiers ne portant pas le nom de son id. Qu'en pensez-vous ?

    Est-ce possible avec un htaccess ?

    Par avance, merci.

  4. #4
    Expert confirmé
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Par défaut
    Est-ce possible avec un htaccess ?
    Non je pense pas. Tu vas devoir le faire à la main avec des enregistrements en base.

  5. #5
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Avril 2011
    Messages
    660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 660
    Par défaut
    Comment comparer le nom d'un dossier avec l'id de l'utilisateur. Est-ce simplement envisageable ?

    Si l'utilisateur n'est pas dans le dossier "2"

    alors => exit ();

    En fait, pour la gestion des images, j’utilise un plugin de tinymce qui utilise fancyupload :

    Le plugin permet d'envoyer des photos et de les insérer dans le wysiwyg en ouvrant un explorateur. Il faudrait que je sois capable d'ouvrir le plugin dans le bon dossier et que l'utilisateur ne puisse pas se balader ailleurs que dans son dossier.

    Sachant que l'arborescence sera :

    -id_utilisateur =>2
    --type_article =>5
    ---id_article =>110

    A ce jour j'arrive à créer automatiquement les bons dossiers et y envoyer les images.

    Il me reste donc le fait d'ouvrir le plugin dans le bon dossier et à restreindre l'exploration.

    Bref, si des personnes pouvaient m'aider, on pourrait avoir un système d'image permettant de gérer la création d'article avec une gestion multi-utilisateur.

  6. #6
    Membre éprouvé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2006
    Messages
    985
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juillet 2006
    Messages : 985
    Par défaut
    Regarde cette excellente classe pour ce dont tu veux. je l'ai utilisé pour un même souci.

    Meilleures salutations.

Discussions similaires

  1. Réponses: 1
    Dernier message: 05/05/2014, 16h05
  2. [Traitement d'image] Où trouver des images pour illustrer mon site ?
    Par langela94 dans le forum Webdesign & Ergonomie
    Réponses: 4
    Dernier message: 24/01/2006, 17h44
  3. [Image] Classe pour stocker une image JPEG ?
    Par elitost dans le forum Entrée/Sortie
    Réponses: 3
    Dernier message: 19/01/2006, 13h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo