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

Symfony PHP Discussion :

Espace membres avec symfony 4.2


Sujet :

Symfony PHP

  1. #1
    Membre éclairé
    Femme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2010
    Messages
    414
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Octobre 2010
    Messages : 414
    Par défaut Espace membres avec symfony 4.2
    Bonjour,


    Je sais pas comment procéder dans la multitude de docs de symfony.
    Voici ce que j'ai fait:
    J'ai crée un système de création de factures. Tout le monde peut créer et voir les factures de tout le monde.
    Voici ce que je veux faire:
    J'aimerais que les utilisateurs puissent se connecte et voir uniquement que les factures qu'ils ont crée.


    Comment procéder sur symfony 4.2 ?


    Merci de votre aide !

  2. #2
    Membre averti
    Homme Profil pro
    Technicien GC
    Inscrit en
    Juillet 2017
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien GC
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Juillet 2017
    Messages : 23
    Par défaut
    Bonjour,

    Voici ce que je ferais :
    - création d'une requête où tu récupères la liste des factures selon l'id de l'utilisateur dans ton Répository
    - tu fais appelle à cette requête dans un Controller qui retournera une page Twig avec la liste en question.

    -> Bien pensé à configurer que seulement les utilisateurs peuvent accéder à cette page (utilisation des ROLES par exemple)
    => concernant les ROLES Security (Symfony Docs)

  3. #3
    Membre extrêmement actif
    Avatar de dukoid
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2012
    Messages
    2 100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2012
    Messages : 2 100
    Par défaut
    si tu es débutant tu peux utiliser fosUserbundle pour implementer un systeme de connexion/inscription (il y a plein de tuto sur internet)

    ensuite une fois connecté, symfony met l'utilisateur en session
    et donc tu interroges la session pour récupérer l'utilisateur et son ID
    et avec son id, une requête doctrine pour récupérer les factures ayant cet ID

  4. #4
    Futur Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mai 2019
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Santé

    Informations forums :
    Inscription : Mai 2019
    Messages : 4
    Par défaut
    Salut une autre approche est d'utiliser une relation OneToMany dans ton entity User qui lie ton entity Facture ex :

    Dans l'entity User
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    /**
    * @ORM\OneToMany(targetEntity="App\Entity\Facture", mappedBy="user")
    */
    private $factures;
    Puis dans l'entity Facture pour la relations inverse
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    /**
    * @ORM\ManyToOne(targetEntity="App\Entity\User", inversedBy="factures")
    */
    private $user;
    Ne pas oublier de générer les getters et setters pour les champs précédents

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    php bin/console make:entity --regenerate
    Puis dans tes contrôleurs c'est très simple de récupérer les factures de l'utilisateur courant ex :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $this->getUser()->getFactures();
    Très facile de récupérer aussi l'user de la facture
    Quelques liens utiles pour mettre en place une authentification.

    https://symfony.com/doc/current/security.html

    https://symfony.com/doc/current/secu...gin_setup.html

Discussions similaires

  1. [Spip] espace membre avec Spip
    Par elekaj34 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 22/04/2011, 12h37
  2. Réponses: 7
    Dernier message: 09/04/2010, 00h32
  3. Espace membre avec htaccess & htpasswd
    Par gcvoiron dans le forum Apache
    Réponses: 1
    Dernier message: 08/07/2008, 12h43
  4. [MySQL] Espace membre avec session
    Par yamatoshi dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 23/05/2008, 11h11
  5. [XHTML] comment creer un espace membre avec xhtml ?
    Par dax80 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 8
    Dernier message: 09/08/2007, 00h31

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