Ich habe auf meiner Silex-Website einen gesicherten Bereich eingerichtet. Ich muss den Benutzernamen in der Kopfzeile anzeigen, wenn der Benutzer verbunden ist, oder einen Link zum Anmeldeformular, wenn der Benutzer nicht verbunden ist. Wenn sich der Benutzer jedoch auf einer Seite befindet, die nicht gesichert ist (außerhalb der Firewall), ist app.user
nicht definiert.Silex - Zugriff für Benutzer außerhalb eines gesicherten Bereichs
Ich habe versucht this Lösung, aber es funktioniert nicht.
Hier ist meine Sicherheitskonfiguration:
$app->register(new Silex\Provider\SecurityServiceProvider(), array(
'security.firewalls' => array(
'account' => array(
'pattern' => '^/account',
'form' => array('login_path' => '/login', 'check_path' => '/account/login_check'),
'users' => $app->share(function() use ($app) {
return new UserProvider($app['db']);
}),
),
'unsecured' => array(
'anonymous' => true,
),
)
));
Und hier meine Header, wo ich den Benutzernamen bin Anzeige:
{% if app.user %}
{{ app.user.username }}<br />
<a href="{{ path('account') }}">Mon compte</a>
{% else %}
<a href="{{ path('login') }}">se connecter</a><br />
<a href="{{ path('signup') }}">créer un compte</a>
{% endif %}
Boom, es funktioniert, danke! –