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

Zend_Acl & Zend_Auth PHP Discussion :

Demarche à suivre pour identification [ZF 1.9]


Sujet :

Zend_Acl & Zend_Auth PHP

  1. #1
    Inactif  
    Inscrit en
    Novembre 2008
    Messages
    255
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 255
    Points : 264
    Points
    264
    Par défaut Demarche à suivre pour identification
    J'ai suivi un tutoriel pour l'identification ainsi je me suis heurté au problème suivant :

    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
    <?php
    class Model_AuthAdapter implements Zend_Auth_Adapter_Interface
    {
        protected $username;
        protected $password;
        protected $user;
        public function __construct($username, $password) {
            $this->username = $username;
            $this->password = $password;
            $this->user = new Model_DbTable_Users();
        }
        public function authenticate()
        {
            $match = $this->user->findCredentials($this->username, $this->password);
            //var_dump($match);
            if(!$match) {
                $result = new Zend_Auth_Result(Zend_Auth_Result::FAILURE_CREDENTIAL_INVALID, null);
            } else {
                $user = current($match);
                $result = new Zend_Auth_Result(Zend_Auth_Result::SUCCESS, $user);
            }
            return $result;
        }
    }
    d'après le tut cette classe devrait être trouvé dans le dossier "application/Models/AuthAdapter.php"

    le problème c'est que framework ne la reconnait pas puis que son nom ne débute pas par "Model_DbTable_" et je pense que c'est normale.

    Fatal error: Class 'ModelAuthAdapter' not found in /home/googlep1/public_html/fromBegin/application/controllers/IndexController.php on line 31
    Est ce qu'il y'a quelque chose qui cloche avec ce tut ou est ce que c'est la bonne démarche à suivre ?
    Sinon comment je fais ?

  2. #2
    Membre expert
    Avatar de s.n.a.f.u
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    2 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Points : 3 545
    Points
    3 545
    Par défaut
    Peut-être un simple problème de casse : le répertoire est plus souvent nommé "models"
    • Avant de poser une question, n'hésitez pas à chercher dans la FAQ et les forums
    • Merci d'utiliser les balises de code (# dans l'éditeur)
    • N'oubliez pas de vous servir des boutons , et

    S.N.A.F.U

  3. #3
    Inactif  
    Inscrit en
    Novembre 2008
    Messages
    255
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 255
    Points : 264
    Points
    264
    Par défaut
    non en faite il reconnait cette classe qui est située dans le même répertoire

    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
    <?php
    class Model_DbTable_Comments extends Zend_Db_Table
    {
        protected $_name = 'comments';
        public function getComments( $postid ) 
        {
            $result = $this->fetchAll( "post_id = '$postid'"  );
            return $result->toArray();
        }
        public function saveComment( $commentForm )
        {
            $data = array('post_id' => $commentForm['id'] ,
                    'Description' => $commentForm['comment'],
                    'Name' => $commentForm['name'],
                    'Email' => $commentForm['email'],
                    'Webpage' => $commentForm['webpage'] );
            $this->insert($data);
        }
    }

  4. #4
    Membre expert
    Avatar de s.n.a.f.u
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    2 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Points : 3 545
    Points
    3 545
    Par défaut
    Un truc me gêne dans le message d'erreur. J'attendais plutôt

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Fatal error: Class 'Model_AuthAdapter' not found in /home/googlep1/public_html/fromBegin/application/controllers/IndexController.php on line 31
    Où est passé le underscore ?
    • Avant de poser une question, n'hésitez pas à chercher dans la FAQ et les forums
    • Merci d'utiliser les balises de code (# dans l'éditeur)
    • N'oubliez pas de vous servir des boutons , et

    S.N.A.F.U

  5. #5
    Inactif  
    Inscrit en
    Novembre 2008
    Messages
    255
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 255
    Points : 264
    Points
    264
    Par défaut
    Bien vu Exact désole j'ai fais quelque tri buche.
    Mais c'est pas ca le problème viens surement du nom "'Model_AuthAdapter'" qui devrai inclure le "_DbTable"
    en faite j'utilise la version 1.9.6 de zf.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Fatal error: Class 'Model_AuthAdapter' not found in /home/googlep1/public_html/fromBegin/application/controllers/IndexController.php on line 31

  6. #6
    Membre expert
    Avatar de s.n.a.f.u
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    2 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Points : 3 545
    Points
    3 545
    Par défaut
    Non les deux ne sont pas au même endroit.
    Pour être certain de ta structure, tu dois avoir ces fichiers :

    - application/models/AuthAdapter.php
    - application/models/DbTable/Comments.php

    Sommes-nous d'accord ?
    • Avant de poser une question, n'hésitez pas à chercher dans la FAQ et les forums
    • Merci d'utiliser les balises de code (# dans l'éditeur)
    • N'oubliez pas de vous servir des boutons , et

    S.N.A.F.U

  7. #7
    Inactif  
    Inscrit en
    Novembre 2008
    Messages
    255
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 255
    Points : 264
    Points
    264
    Par défaut
    Ok voila qui resoud 90% du problème .Merci
    encore une question dans ce cas je suis obligé de faire un require_once('AuthAdapter.php') ? ou il y'a une méthode pour charger automatiquement ?

  8. #8
    Membre expert
    Avatar de s.n.a.f.u
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    2 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Points : 3 545
    Points
    3 545
    Par défaut
    Utiliser l'autoloader :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    require ('Zend/Loader/Autoloader.php');
    Zend_Loader_Autoloader::getInstance();
    et ensuite ça roule tout seul.
    • Avant de poser une question, n'hésitez pas à chercher dans la FAQ et les forums
    • Merci d'utiliser les balises de code (# dans l'éditeur)
    • N'oubliez pas de vous servir des boutons , et

    S.N.A.F.U

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

Discussions similaires

  1. Demarche a suivre pour recuperation de données MYSQL
    Par -Fly- dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 27/05/2011, 20h41
  2. marche a suivre pour la creation d'un progress bar
    Par azde7015 dans le forum Access
    Réponses: 1
    Dernier message: 19/02/2006, 11h06
  3. [Oracle 9i] Marche à suivre pour installer un Patch
    Par zestrellita dans le forum Oracle
    Réponses: 2
    Dernier message: 03/11/2005, 15h39
  4. La procédure à suivre pour recréer un tablespace
    Par tsunamijf dans le forum Oracle
    Réponses: 10
    Dernier message: 18/10/2005, 15h46
  5. algo pour identification unique
    Par quiyai dans le forum Algorithmes et structures de données
    Réponses: 6
    Dernier message: 05/07/2005, 12h42

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