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 :

Authentification userBundle sur layout


Sujet :

Symfony PHP

Vue hybride

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

    Informations forums :
    Inscription : Septembre 2011
    Messages : 146
    Par défaut Authentification userBundle sur layout
    Bonjour,

    J'essaye de mettre le formulaire d'authentification de FOSUserBundle directement sur le layout de mon site mais je n'y arrive pas.

    J'ai bien vu qu'il était affiché si on mettait

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    {% block fos_user_content %}{% endblock %}
    Alors je me suis dit je vais mettre cela dans mon layout ... mais comme vous vous en doutez cela n'a rien affiché...

    Avez vous une idée merci

  2. #2
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2011
    Messages
    135
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2011
    Messages : 135
    Par défaut
    tu ne peux pas utiliser le render? ou include?

  3. #3
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Septembre 2011
    Messages
    146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2011
    Messages : 146
    Par défaut
    Ba j y ai pensé mais ca ne fonctionne pas ....

  4. #4
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juillet 2011
    Messages
    135
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2011
    Messages : 135
    Par défaut
    Ah ok désolé mais j'utilise pas ce bundle... mais c'est bizarre quand même! si tu fais un twig a part avec ton formulaire d'authentification avec la fonction la fonction qui faut! sa devrait marcher en render! Par contre moi j'avais eu un problème avec l'objet request qui le transmettait pas forcement au render! alors j'utilise $_POST['$form->getName'] ou sinon tu met en paramètre ton request!

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 7
    Par défaut
    Voici ce que je met entre mon block body
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
            {% for key, message in app.session.getFlashes() %}
            <div class="{{ key }}">
                {{ message|trans({}, 'FOSUserBundle') }}
            </div>
            {% endfor %}
     
            <div>
                {% block fos_user_content %}
                {% endblock fos_user_content %}
            </div>

  6. #6
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Septembre 2011
    Messages
    146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2011
    Messages : 146
    Par défaut
    Je vais faire un message plus expliqué car c’est un peu léger ce que je fourni comme infos…

    L’architecture de mon site est la suivante
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    |-App
    |   |-Resources
    |       |-Views
    |            |-Base.html.twig (les template du site)
    |-Src
         |-Demo
            |-StaticBundle
            |    |-Resources
            |    |-Views
            |        |-Page (template des pages statics)
            |            |-Page1.html.twig
            |            |-Page2.html.twig
    	|-UtilisateurBundle
                    |-Resources
                        |-Views
                            |-Layout.html.twig
                            |-connexion.html.twig
    Voici le contenu de mon fichier Layout.html.twig
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    {% extends '::base.html.twig' %}
     
    {% block title %}{% endblock %}
     
    {% block content %}
        {% block fos_user_content %}{% endblock %}
    {% endblock %}
    Voici le contenu de mon fichier connexion.html.twig
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    <div>
    {% if is_granted("IS_AUTHENTICATED_REMEMBERED") %}
        <a href="{{ path('fos_user_profile_show') }}">{{ 'layout.logged_in_as'|trans({'%username%': app.user.username}, 'FOSUserBundle') }}</a> |
        <a href="{{ path('fos_user_security_logout') }}">
            {{ 'layout.logout'|trans([], 'FOSUserBundle') }}
        </a>
    {% else %}
        <a href="{{ path('fos_user_security_login') }}">{{ 'layout.login'|trans([], 'FOSUserBundle') }}</a> |
        <a href="{{ path('fos_user_registration_register') }}">{{ 'layout.register'|trans([], 'FOSUserBundle') }}</a>
    {% endif %}
    </div>
     
    {% for key, flash in app.session.getFlashes() %}
    <div class="{{ flash }}">
        {{ key|trans([], 'FOSUserBundle') }}
    </div>
    {% endfor %}
    Ce que je voudrais c’est mettre juste le formulaire que l’on voit dans layout.html.twig le mettre dans mon fichier base.html.twig. D'après ce que j'ai vu cette ligne permet d'afficher le formulaire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        {% block fos_user_content %}{% endblock %}
    et surtout voici mon base.html.twig
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
        <head>
            <title>{% block title %}xxxxxxxxxxx{% endblock %}</title>
            <meta http-equiv="content-type" content="text/html; charset=utf-8" />
            <link href="{{ asset('css/main.css') }}" type="text/css" rel="stylesheet" />
        </head>
        <body>
            <div class="content-page">
                <a href="{{ path('DemoStaticBundle_homepage') }}">
                    <div class="head"></div>
                </a>
                <div class="inscription">
                    <u>
                        {% include "DemoUtilisateurBundle::connexion.html.twig" %}
                    </u>
                </div>
                <div class="menu">
                    <ul style="margin-left: 40px;">
                        <li style="margin-right: 87px;"><a href="{{ path('DemoStaticBundle_homepage') }}">Accueil</a></li>
                        <li style="margin-right: 95px;"><a href="">xxxxxx</a></li>
                        <li style="margin-right: 118px;"><a href="">xxxx</a></li>
                        <li style="margin-right: 135px;"><a href="">xxxxxx</a></li>
                        <li><input type="text" name="recherche" value="recherche"></input></li>
                    </ul>
                </div>
                <div class="cadre">
                    <div class="cadre-head"></div>
                    <div class="cadre-centre">
                        {% block content %}
                        {% endblock %}
                    </div>
                    <div class="cadre-foot"></div>
                </div>
                <div class="foot">
                    <div class="cadre">
                        <div class="cadre-head"></div>
                        <div class="cadre-centre-foot">
                            <span>
                                <span class="foot-texte-gauche">xxxxxxxxxx © 2012</span>
                                <span class="foot-menu">
                                    <a href="{{ path('DemoStaticBundle_about') }}">A propos de</a>
                                    &nbsp;&nbsp;|&nbsp;&nbsp;
                                    <a href="{{ path('DemoStaticBundle_conditionsU') }}">Conditions d'utilisations</a>
                                    &nbsp;&nbsp;|&nbsp;&nbsp;
                                    <a href="{{ path('DemoStaticBundle_contact') }}">Contactez-nous</a>   
                                </span>
                            </span>
                        </div>
                        <div class="cadre-foot"></div>
                    </div>
                </div>
            </div>
        </body>
    </html>
    Voila help me please

  7. #7
    Membre émérite

    Profil pro
    Inscrit en
    Juin 2004
    Messages
    772
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Juin 2004
    Messages : 772
    Par défaut
    Je ne comprends pas ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    {% extends '::base.html.twig' %}
     
    {% block title %}{% endblock %}
     
    {% block content %}
        {% block fos_user_content %}{% endblock %}
    {% endblock %}
    Normalement, tu redéfinis ton bloc "content" dans tous les templates de tes pages, donc si tu ne remets pas ton bloc "fos_user_content" dans toutes tes pages, effectivement il ne s'affiche pas.
    La solution n'est donc pas non plus de le remettre dans toutes tes pages mais de le sortir du bloc "content" :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    {% extends '::base.html.twig' %}
     
    {% block title %}{% endblock %}
     
    {% block fos_user_content %}{% endblock %}
     
    {% block content %}
    {% endblock %}

Discussions similaires

  1. Réponses: 5
    Dernier message: 27/02/2007, 18h32
  2. Authentification bizarre sur serveur distant
    Par TheoOrl45 dans le forum ASP.NET
    Réponses: 11
    Dernier message: 20/02/2007, 13h56
  3. [Sécurité] Authentification utilisateur sur site
    Par Badaboumpanpan dans le forum Langage
    Réponses: 2
    Dernier message: 04/07/2006, 11h57
  4. Authentification HTTP sur 2 serveurs
    Par mecha dans le forum Apache
    Réponses: 5
    Dernier message: 23/06/2006, 17h21

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