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 :

Tuto Débutez avec Zend_Auth : erreur [ZF 1.7]


Sujet :

Zend_Acl & Zend_Auth PHP

  1. #1
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 032
    Points
    34 032
    Billets dans le blog
    14
    Par défaut Tuto Débutez avec Zend_Auth : erreur
    Bonjour,
    Après avoir suivi le tuto "Débuter avec Zend Framework 1.5 (approche MVC)", j'essaie le tuto sur Zend_Auth et j'obtiens une erreur :
    Fatal error: Call to a member function asArray() on a non-object in /var/www/zf-tutorial/index.php on line 35
    La ligne 35 en question est la seconde de l'extrait ci-dessous :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $dbAdapter = Zend_Db::factory($config->db->adapter,
    							$config->db->config->asArray());
    Le code du 1er tuto était celui-ci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $db = Zend_Db::factory($config->db);
    Zend_Db_Table::setDefaultAdapter($db);
    Le tuto Zend_Auth demande d'y ajouter ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $dbAdapter = Zend_Db::factory($config->db->adapter,
    							$config->db->config->asArray());
    Zend_Db_Table::setDefaultAdapter($db);
    Zend_Registry::set('dbAdapter', $db);
    Ayant constaté qu'il y avait deux fois la ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Zend_Db_Table::setDefaultAdapter($db);
    J'ai pensé qu'il fallait peut-être remplacer l'ancien code par le nouveau mais j'ai la même erreur.
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  2. #2
    Membre confirmé
    Avatar de Jcpan
    Inscrit en
    Août 2008
    Messages
    542
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 542
    Points : 475
    Points
    475
    Par défaut
    Bonjour

    est ce qu'on peut voir le index.php ?

  3. #3
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 032
    Points
    34 032
    Billets dans le blog
    14
    Par défaut
    Le voici :
    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
    <?php
    /*
     * index.php
     * D'après le tutoriel de DVP
     * 
     * Créé le 10 janv. 2010
     * 
     *
     */
    error_reporting(E_ALL|E_STRICT);
    ini_set('display_errors', 1);
    date_default_timezone_set('Europe/Paris');
     
    // mise en place des répertoires et chargement des classes
    set_include_path('.'
        . PATH_SEPARATOR . './library'
        . PATH_SEPARATOR . './application/models/'
        . PATH_SEPARATOR . '/usr/share/php/'
        . PATH_SEPARATOR . get_include_path());
    include "Zend/Loader.php";
    Zend_Loader::registerAutoload();
    Zend_Loader::loadClass('Zend_Db_Table');
    Zend_Loader::loadClass('Zend_Debug');
    Zend_Loader::loadClass('Zend_Auth');
     
    // Chargement de la configuration
    $config = new Zend_Config_Ini('./application/config.ini', 'general');
    $registry = Zend_Registry::getInstance();
    $registry->set('config', $config);
     
    // Mise en place de la BDD
    $db = Zend_Db::factory($config->db);
    Zend_Db_Table::setDefaultAdapter($db);
    $dbAdapter = Zend_Db::factory($config->db->adapter,
                                $config->db->config->asArray());
    Zend_Db_Table::setDefaultAdapter($db);
    Zend_Registry::set('dbAdapter', $db);
     
    // setup controller
    $frontController = Zend_Controller_Front::getInstance();
    $frontController->throwExceptions(true);
    $frontController->setControllerDirectory('./application/controllers');
    Zend_Layout::startMvc(array('layoutPath'=>'./application/layouts'));
     
    // run!
    $frontController->dispatch();
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  4. #4
    Membre chevronné Avatar de nosferapti
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    1 157
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 1 157
    Points : 1 895
    Points
    1 895
    Par défaut
    l'article sur Zend_Auth est ancien, il est question de la version 0.9.2 de Zend Framework alors que la version en cours est la 1.9.7

    donc je te propose de mettre juste ça pour la base de données dans le fichier index.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    // Mise en place de la BDD
    $db = Zend_Db::factory($config->db);
    Zend_Db_Table::setDefaultAdapter($db);
    et ensuite dans la suite du code, à la place de "$dbAdapter = Zend_Registry::get('dbAdapter');" mets ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $dbAdapter = Zend_Db_Table::getDefaultAdapter();
    GNAP !

  5. #5
    Membre actif

    Inscrit en
    Juin 2009
    Messages
    99
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 99
    Points : 228
    Points
    228
    Par défaut
    Salut

    $dbAdapter = Zend_Db::factory($config->db->adapter,
    $config->db->config->asArray());
    Remplace asArray avec toArray et ça devrait marcher.

    A+

  6. #6
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 032
    Points
    34 032
    Billets dans le blog
    14
    Par défaut
    Citation Envoyé par nosferapti Voir le message
    et ensuite dans la suite du code, à la place de "$dbAdapter = Zend_Registry::get('dbAdapter');" mets ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $dbAdapter = Zend_Db_Table::getDefaultAdapter();
    Je ne vois pas ce morceau de code.
    Dans quelle "suite du code" ?
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  7. #7
    Membre chevronné Avatar de nosferapti
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    1 157
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 1 157
    Points : 1 895
    Points
    1 895
    Par défaut
    Citation Envoyé par CinePhil Voir le message
    Je ne vois pas ce morceau de code.
    Dans quelle "suite du code" ?
    j'ai vu ce code dans la suite du tutoriel là :
    http://r-benyacoub.developpez.com/tu...ethodes#LIII-A
    GNAP !

  8. #8
    Membre actif

    Inscrit en
    Juin 2009
    Messages
    99
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 99
    Points : 228
    Points
    228
    Par défaut
    Citation Envoyé par nosferapti Voir le message
    l'article sur Zend_Auth est ancien, il est question de la version 0.9.2 de Zend Framework alors que la version en cours est la 1.9.7

    donc je te propose de mettre juste ça pour la base de données dans le fichier index.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    // Mise en place de la BDD
    $db = Zend_Db::factory($config->db);
    Zend_Db_Table::setDefaultAdapter($db);
    et ensuite dans la suite du code, à la place de "$dbAdapter = Zend_Registry::get('dbAdapter');" mets ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $dbAdapter = Zend_Db_Table::getDefaultAdapter();
    ça dépend quel version il utilise...

  9. #9
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 032
    Points
    34 032
    Billets dans le blog
    14
    Par défaut
    Citation Envoyé par helmi.dridi Voir le message
    ça dépend quel version il utilise...
    C'est indiqué dans l'entête du message, la version ZF 1.7.

    Bon j'ai trouvé aussi où était ce bout de code.

    Je n'ai plus le message d'erreur indiqué dans mon premier message mais j'en ai d'autres. Je reviendrai vers le forum si je n'en trouve pas la cause tout seul.

    Il semble en tout cas effectivement que l'ancienneté du tuto sur Zend_Auth soit en cause parce que la structure n'est pas identique au tuto débuter avec Zend Framework version 1.5.
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

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

Discussions similaires

  1. erreur avec zend_auth
    Par nana_md dans le forum Zend Framework
    Réponses: 1
    Dernier message: 03/09/2013, 13h15
  2. [ZF 1.10] Tutoriel "Débutez avec Zend_Auth"
    Par CinePhil dans le forum Zend_Acl & Zend_Auth
    Réponses: 1
    Dernier message: 26/12/2010, 13h47
  3. [ZF 1.7] Erreurs dans le cour Débutez avec Zend_Auth
    Par c_creatix dans le forum Zend_Acl & Zend_Auth
    Réponses: 3
    Dernier message: 10/02/2009, 14h12
  4. Api mysql avec Devc++, erreur de compilation
    Par Viiince dans le forum Autres éditeurs
    Réponses: 5
    Dernier message: 15/06/2004, 17h19

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