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

Plugins PHP Discussion :

Utilisation de sfGuardPlugin avec une table User existante [sfGuard]


Sujet :

Plugins PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 28
    Par défaut Utilisation de sfGuardPlugin avec une table User existante
    Bonjour,

    je suis en train de développer mon premier site sous Symfony (après avoir suivi le tuto Jobeet).
    J'essaye de gérer les droits d'accès à l'admin du site avec sfGuard. Mon problème est que j'aimerais que mes utilisateurs soient stockés dans une table users déjà existante et utilisée par exemple pour le système de news du site.
    Je ne trouve nul part comment faire.

    Voici le schéma de ma table user :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    monsiteUser:
      actAs: { Timestampable: ~ }
      columns:
        username: { type: string(50), notnull: true, unique: true }
        pass: { type: string(50), notnull: true }
        email: { type: string(100), notnull: true }
        level: { type: integer, notnull: true, default: 1 }
        code: { type: string(50) }
        is_activated: { type: boolean, notnull: true, default: 0 }
    Le level correspond aux droits de l'utilisateur (1 pour membre et 10 pour super admin).
    le code est le code de confirmation envoyé par mail pour activer le mail.

    Donc ma question est : est il possible de faire ce que je veux avec sfGuard ou dois je refaire tout le système de login ?

    Merci d'avance

  2. #2
    Expert confirmé
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : DPO
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2005
    Messages : 4 954
    Par défaut
    Tu ne vas pas avoir tellement le choix.

    Si tu veux utiliser sfGuard (ce qui me semble la meilleur solution), tu va devoir repenser une partie de ton schéma.

    L'idée est de créer une table qui va hériter de la table sfGuardUser pour les données courante de l'utilisateur et qui ne sont pas déjà sans la table sfGuardUser.

    Cherches sur la page de la salle, il doit bien y avoir 2 sujets qui en parlent déjà.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 28
    Par défaut
    Merci beaucoup pour ton conseil !
    En réfléchissant, j'ai remarqué que tous les champs qui m'étaient nécessaires dans ma table Users sont déjà disponibles dans sfGuardUser.
    Et j'ai aussi trouvé un ou 2 tutos qui expliquent comment étendre cette table (je pourrais m'en servir si j'ai besoin de nouveaux champs).

    Une question qui va dans le même sens (juste pour ma curiosité), sinon il n'est pas plus simple de directement modifier le schéma de sfGuardUser pour y ajouter les champs voulus ? (du genre date de naissance ou autre)

  4. #4
    Expert confirmé
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : DPO
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2005
    Messages : 4 954
    Par défaut
    C'est une des deux solutions.

    Inconvénients :
    Si le plugin change, il faut retoucher la table.
    Il faut revoir le form de gestion des utilisateurs de sfGuard et le template.
    Si un autre système mieux que sfGuard arrive un jour, on va être limité à sfGuard.

    Mais ce sont des problèmes mineur (sauf le premier, lors du passage de la version 4 à la version 5 de sfGuard).

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 28
    Par défaut
    J'avais juste pensé au problème du changement de version de sfGuard.
    Pour ce qui est de changer de plugin, de toute manière, ca amènerait à modifier le projet, donc je ne pense pas que ce soit vraiment gênant.

    Enfin, de toute manière, si j'ai besoin d'étendre la table, j'en ferais une autre qui héritera de sfGuardUser, ca me paraît quand même le plus optimisé.

    Merci pour tous tes conseils !

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    212
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 212
    Par défaut
    Citation Envoyé par oOZarkOo Voir le message
    Et j'ai aussi trouvé un ou 2 tutos qui expliquent comment étendre cette table (je pourrais m'en servir si j'ai besoin de nouveaux champs).
    Peux tu donner le lien de tes tutos ?

    Merci d' avance.

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 28
    Par défaut
    Suite à un problème d'ordi, j'ai perdu mes favoris. Je vais essayer de retrouver les tutos et de te donner les liens, mais pas sûr que je les retrouve

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    212
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 212
    Par défaut
    COol si tu les retrouves, je vais bosser un peu la doc sur le sujet en parallèle.

    J' ai avoir d' autres projet avec les mêmes problématique à réaliser sous symfony.

    Merci en tout cas.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème d'utilisation du IF avec une table temporaire
    Par yonnel dans le forum Développement
    Réponses: 6
    Dernier message: 08/01/2013, 15h01
  2. [sfGuard] Utilisation de sfGuard avec une table user perso
    Par Fouine44 dans le forum Plugins
    Réponses: 5
    Dernier message: 20/01/2011, 17h38
  3. Utilisation de TdbLookUpCombo avec une table TAdoTable
    Par gilardino dans le forum Composants VCL
    Réponses: 3
    Dernier message: 01/08/2008, 11h00
  4. [reflection] Comment utiliser la reflection avec une table ?
    Par leraptor dans le forum Général Java
    Réponses: 8
    Dernier message: 18/01/2008, 11h45
  5. Comment utiliser un BLOB avec une table ACCESS ?
    Par colorid dans le forum Bases de données
    Réponses: 1
    Dernier message: 04/07/2007, 18h46

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