Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Bonjour.
Je suis un tuto pour mettre en place zend_auth + zend_acl.
Mon formulaire d'identification est en place, ainsi que la session....
Dans mon controller Auth je gère l'authentification
class AuthController extends Zend_Controller_Action { function loginAction() { // do the authentication $auth = Zend_Auth::getInstance(); $result = $auth->authenticate($authAdapter); if ($result->isValid()) { ..... } } }
A un moment donné on me demande de faire ceci pour initialiser le plugin dans le bootstrap
# // $auth est une référence vers Zend_Auth (getInstance()) $front->registerPlugin(new My_Controller_Plugin_Auth($auth, $acl)) ;
$acl est défini comme ci-après (OK)
$acl_ini = '../application/acl.ini' ; $acl = new My_Acl_Ini($acl_ini) ;
Par contre comment faire une référence vers Zend_auth pour définir $auth?
Merci par avance.
Hors ligne
Salut,
Si j'ai bien compris la question :
$auth = Zend_Auth::getInstance();
A+ benjamin.
Hors ligne
Delprog a écrit:
Salut,
Si j'ai bien compris la question :Code:
$auth = Zend_Auth::getInstance();A+ benjamin.
J'avais tenté cela, mais ca me génère une erreur.
j'avais donc supposé que je devais me tromper à cet endroit la.
Catchable fatal error: Argument 1 passed to My_Controller_Plugin_Auth::__construct() must be an instance of Zend_Acl, instance of Zend_Auth given, called in C:\wamp\www\zend_auth\application\bootstrap.php on line 36 and defined in C:\wamp\www\zend_auth\library\My\Controller\Plugin\Auth.php on line 37
Hors ligne
Si tu fais bien ça :
$acl_ini = '../application/acl.ini' ; $acl = new My_Acl_Ini($acl_ini) ;
avant le registerPlugin(), alors l'erreur doit être dans la classe My_Acl_Ini, et l'objet ne doit pas être un "Zend_Acl conforme"
A+ benjamin.
Hors ligne
Tu n'as pas besoin de passer $auth en fait. Il est récupéré dans __construct de My_Controller_Plugin_Auth.
C'est un bug dans le tuto. C'est corrigé. Merci
Hors ligne