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 :

Débuter avec Zend_Auth


Sujet :

Zend_Acl & Zend_Auth PHP

  1. #1
    Membre du Club Avatar de yosraisi
    Inscrit en
    Février 2008
    Messages
    136
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 136
    Points : 67
    Points
    67
    Par défaut Débuter avec Zend_Auth
    salut

    je viens de terminer la création de mon répertoire de tutoriel de Débutez avec Zend_Auth

    il y a des erreur au niveau de mon exécution
    voici le code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    // setup database
    $dbAdapter = Zend_Db::factory($config->db->adapter,
    $config->db->config->asArray());
    Zend_Db_Table::setDefaultAdapter($db);
    Zend_Registry::set('dbAdapter', $db);
    et l'erreur c :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Fatal error: Call to undefined method Zend_Config::asArray() in D:\wamp\www\ZENDDD\index.php on line 29
    j'ai besoin de votre aide et je comprend pas ou est le probleme ??

  2. #2
    Membre émérite Avatar de nicolas.sitbon
    Profil pro
    Inscrit en
    Août 2007
    Messages
    2 015
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 2 015
    Points : 2 280
    Points
    2 280
    Par défaut
    Montre nous comment tu initialises ta variable $config s'il te plaît.
    "The quieter you become, the more you are able to hear"
    "Plus vous êtes silencieux, plus vous êtes capable d'entendre"

  3. #3
    Membre du Club Avatar de yosraisi
    Inscrit en
    Février 2008
    Messages
    136
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 136
    Points : 67
    Points
    67
    Par défaut
    voici mon varible $config

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    // load configuration
    $config = new Zend_Config_Ini('./application/config.ini', 'general');
    $registry = Zend_Registry::getInstance();
    $registry->set('config', $config);

  4. #4
    Membre du Club Avatar de yosraisi
    Inscrit en
    Février 2008
    Messages
    136
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 136
    Points : 67
    Points
    67
    Par défaut
    j'ai d'abord ecrit

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Zend_Loader::loadClass('Zend_Config');

  5. #5
    Membre émérite Avatar de nicolas.sitbon
    Profil pro
    Inscrit en
    Août 2007
    Messages
    2 015
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 2 015
    Points : 2 280
    Points
    2 280
    Par défaut
    fais comme ça :
    config.ini
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    [general]
    db.adapter = PDO_MYSQL
    db.params.host = localhost
    db.params.username = root
    db.params.password =
    db.params.dbname = forum
    et dans ton code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $dbAdapter = Zend_Db::factory($config->db);
    En mettant bien entendu les bonnes valeurs dans ton fichier .ini .
    "The quieter you become, the more you are able to hear"
    "Plus vous êtes silencieux, plus vous êtes capable d'entendre"

  6. #6
    Membre du Club Avatar de yosraisi
    Inscrit en
    Février 2008
    Messages
    136
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 136
    Points : 67
    Points
    67
    Par défaut
    bonjour
    merci nicolas pour l'explication

    mon fichier .ini est le suivant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    [general]
    db.adapter = PDO_MYSQL
    db.config.host = localhost
    db.config.username = root
    db.config.password =
    db.config.dbname = mabase
    donc il n' y a pas de probleme avec config.ini

    dans le code suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $db = Zend_Db::factory($config->db->adapter,  $config->db->config->asArray());
    $dbAdapter = Zend_Db::factory($config->db->adapter,
    $config->db->config->toArray());
    Zend_Db_Table::setDefaultAdapter($db);
    Zend_Registry::set('dbAdapter', $db);
    une erreur affiche que asArray n'existe pas donc j'ai aller au fichier Db.php et j'ai trouver qu'il y a la fonction toArray et il n' y a pas la fonction asArray puisque la fonction factory necessite une variable adaptater et un variable config de type Array donc j'ai changer mon code comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    $db = Zend_Db::factory($config->db->adapter,  $config->db->config->toArray());
    $dbAdapter = Zend_Db::factory($config->db->adapter,
    $config->db->config->toArray());
    Zend_Db_Table::setDefaultAdapter($db);
    Zend_Registry::set('dbAdapter', $db);
    maintenent une autre erreur s'affiche que je n'arrive pas à comprendre

    et c'est
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Fatal error: Uncaught exception 'Zend_Session_Exception' with message 'session has already been started by session.auto-start or session_start()' in D:\wamp\www\ZENDDD\library\Zend\Session.php:394 Stack trace: #0 D:\wamp\www\ZENDDD\library\Zend\Session\Namespace.php(116): Zend_Session::start(true) #1 D:\wamp\www\ZENDDD\library\Zend\Auth\Storage\Session.php(85): Zend_Session_Namespace->__construct('Zend_Auth') #2 D:\wamp\www\ZENDDD\library\Zend\Auth.php(92): Zend_Auth_Storage_Session->__construct() #3 D:\wamp\www\ZENDDD\library\Zend\Auth.php(144): Zend_Auth->getStorage() #4 D:\wamp\www\ZENDDD\Application\controllers\IndexController.php(10): Zend_Auth->getIdentity() #5 D:\wamp\www\ZENDDD\library\Zend\Controller\Action.php(129): IndexController->init() #6 D:\wamp\www\ZENDDD\library\Zend\Controller\Dispatcher\Standard.php(269): Zend_Controller_Action->__construct(Object(Zend_Controller_Request_Http), Object(Zend_Controller_Response_Http), Array) #7 D:\wamp\www\ZENDDD\library\Zend\Controller\Front.php(914): Zend_Controller_Dis in D:\wamp\www\ZENDDD\library\Zend\Session.php on line 394
    j'ai besoin de votre aide

  7. #7
    Membre à l'essai
    Inscrit en
    Janvier 2008
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 14
    Points : 11
    Points
    11
    Par défaut
    Verifie le session.auto_start dans ton fichier php.ini
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    session.auto_start = 0
    doit etre à 0

  8. #8
    Membre émérite Avatar de nicolas.sitbon
    Profil pro
    Inscrit en
    Août 2007
    Messages
    2 015
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 2 015
    Points : 2 280
    Points
    2 280
    Par défaut
    Citation Envoyé par yosraisi Voir le message
    bonjour
    merci nicolas pour l'explication

    mon fichier .ini est le suivant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    [general]
    db.adapter = PDO_MYSQL
    db.config.host = localhost
    db.config.username = root
    db.config.password =
    db.config.dbname = mabase
    donc il n' y a pas de probleme avec config.ini

    dans le code suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $db = Zend_Db::factory($config->db->adapter,  $config->db->config->asArray());
    $dbAdapter = Zend_Db::factory($config->db->adapter,
    $config->db->config->toArray());
    Zend_Db_Table::setDefaultAdapter($db);
    Zend_Registry::set('dbAdapter', $db);
    une erreur affiche que asArray n'existe pas donc j'ai aller au fichier Db.php et j'ai trouver qu'il y a la fonction toArray et il n' y a pas la fonction asArray puisque la fonction factory necessite une variable adaptater et un variable config de type Array donc j'ai changer mon code
    Tu n'écoutes pas ce que je dis : je t'ai dis de faire ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $dbAdapter = Zend_Db::factory($config->db);
    "The quieter you become, the more you are able to hear"
    "Plus vous êtes silencieux, plus vous êtes capable d'entendre"

  9. #9
    Membre du Club Avatar de yosraisi
    Inscrit en
    Février 2008
    Messages
    136
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 136
    Points : 67
    Points
    67
    Par défaut
    salut nicolas bon j'ai fais c que tu m'as dis voila maintenant le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    // load configuration
    
    $config = new Zend_Config_Ini('./application/config.ini', 'general');
    $registry = Zend_Registry::getInstance();
    $registry->set('config', $config);
    
    // setup database
    $db = Zend_Db::factory($config->db->adapter,  $config->db->config->toArray());
    $dbAdapter = Zend_Db::factory($config->db);
    Zend_Db_Table::setDefaultAdapter($db);
    Zend_Registry::set('dbAdapter', $db);
    mais il reste le meme proble

  10. #10
    Membre du Club Avatar de yosraisi
    Inscrit en
    Février 2008
    Messages
    136
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 136
    Points : 67
    Points
    67
    Par défaut
    voici

    l'erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Fatal error: Uncaught exception 'Zend_Db_Adapter_Exception' with message 'Configuration array must have a key for 'dbname' that names the database instance' in D:\wamp\www\ZENDDD\library\Zend\Db\Adapter\Abstract.php:243 Stack trace: #0 D:\wamp\www\ZENDDD\library\Zend\Db\Adapter\Abstract.php(174): Zend_Db_Adapter_Abstract->_checkRequiredOptions(Array) #1 D:\wamp\www\ZENDDD\library\Zend\Db.php(247): Zend_Db_Adapter_Abstract->__construct(Array) #2 D:\wamp\www\ZENDDD\index.php(29): Zend_Db::factory(Object(Zend_Config)) #3 {main} thrown in D:\wamp\www\ZENDDD\library\Zend\Db\Adapter\Abstract.php on line 243

  11. #11
    Membre du Club Avatar de yosraisi
    Inscrit en
    Février 2008
    Messages
    136
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 136
    Points : 67
    Points
    67
    Par défaut
    Citation Envoyé par bertra Voir le message
    Verifie le session.auto_start dans ton fichier php.ini
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    session.auto_start = 0
    doit etre à 0
    j'ai verifier dans mon fichier php.ini et j'ai trouver j'ai changer à 0 mais il reste le même problème

  12. #12
    Membre émérite Avatar de nicolas.sitbon
    Profil pro
    Inscrit en
    Août 2007
    Messages
    2 015
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 2 015
    Points : 2 280
    Points
    2 280
    Par défaut
    Citation Envoyé par yosraisi Voir le message
    // setup database
    $db = Zend_Db::factory($config->db->adapter, $config->db->config->toArray());
    $dbAdapter = Zend_Db::factory($config->db);
    [/CODE]
    C'est une blague?
    Citation Envoyé par yosraisi Voir le message
    j'ai verifier dans mon fichier php.ini et j'ai trouver j'ai changer à 0 mais il reste le même problème
    As tu redémarré ton serveur?
    "The quieter you become, the more you are able to hear"
    "Plus vous êtes silencieux, plus vous êtes capable d'entendre"

  13. #13
    Membre du Club Avatar de yosraisi
    Inscrit en
    Février 2008
    Messages
    136
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 136
    Points : 67
    Points
    67
    Par défaut
    oui bien sure j'ai redémarré mon serveur

    est ce que je peux savoir une chose?

    quand tu m'as dis de changer le code de l 'adaptateur à
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $dbAdapter = Zend_Db::factory($config->db);
    la fonction factory necessite deux parametre $config et $ adaptater je ne comprend pas pourquoi tu supprime le deuxieme parametre
    et dans l'erreur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    'Configuration array must have a key for 'dbname' that names the database instance
    il y a un manque de key de base de donnee ???
    je te signale que c la premier fois que je travaille avec Zend_Auth

  14. #14
    Membre émérite Avatar de nicolas.sitbon
    Profil pro
    Inscrit en
    Août 2007
    Messages
    2 015
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 2 015
    Points : 2 280
    Points
    2 280
    Par défaut
    Citation Envoyé par yosraisi Voir le message
    la fonction factory necessite deux parametre $config et $ adaptater je ne comprend pas pourquoi tu supprime le deuxieme parametre
    http://framework.zend.com/manual/fr/...factory-config

    Citation Envoyé par yosraisi Voir le message
    et dans l'erreur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    'Configuration array must have a key for 'dbname' that names the database instance
    Tu n'as pas fait le fichier .ini comme je te l'ai dis.
    Quelle version de ZF utilises tu?
    "The quieter you become, the more you are able to hear"
    "Plus vous êtes silencieux, plus vous êtes capable d'entendre"

  15. #15
    Membre du Club Avatar de yosraisi
    Inscrit en
    Février 2008
    Messages
    136
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 136
    Points : 67
    Points
    67
    Par défaut


    ça marché le problème était dans l'emplacement des fichiers footer.phtml et header.phtml ils doivent se situer dans le répertoire
    application\views\scripts

    et voila donc merci pour tout qui m'ont aidé nicolas et bertra

    merci bien maintnent je vais commencer le tutoriel de Zend_Acl / Zend_Auth scénario d'exemple

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

Discussions similaires

  1. débuter avec Visual .NET
    Par akimmm dans le forum MFC
    Réponses: 4
    Dernier message: 28/10/2005, 04h53
  2. [GridBagLayout] Comment débuter avec ce layout
    Par Bighobbit dans le forum Débuter
    Réponses: 12
    Dernier message: 28/09/2005, 17h13
  3. [MFC je crois] Débuter avec visual c++
    Par flzox dans le forum MFC
    Réponses: 6
    Dernier message: 28/06/2005, 18h31
  4. [JAXP] Débuter avec XML et Java
    Par Fleep dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 04/05/2005, 11h27
  5. Débuter avec Java
    Par reptils dans le forum Débuter avec Java
    Réponses: 9
    Dernier message: 11/07/2004, 21h26

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