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_Db PHP Discussion :

Zend_Db_Adapter_Pdo_Mysql => Problème avec FETCH_CLASS


Sujet :

Zend_Db PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2003
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2003
    Messages : 7
    Par défaut Zend_Db_Adapter_Pdo_Mysql => Problème avec FETCH_CLASS
    Bonjour à tous,

    J'aimerais avoir des éclaircissements concernant le composant Zend Zend_Db_Adapter_Pdo_Mysql.

    Voici mon exemple:
    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
    class ami{
     
    	public $id_ami;
    	public $lastname;
    	public $firstname;
    	public $birthdate;
     
    	public function getname(){
     		return $this->lastname . ' '. $this->firstname;
    	}
    }
    try {
    	$db = Zend_Db::factory('Pdo_Mysql', $config->database);
           $db->getConnection();
    } catch (Zend_Db_Adapter_Exception $e) {
    	echo $e->getMessage();
    } catch (Zend_Exception $e) {
    	echo $e->getMessage();
    }
     
        $sql = "SELECT * FROM ami";
     
        $stmt = $db->query($sql);
     
        $obj = $stmt->fetchAll(PDO::FETCH_CLASS,'ami');
     
        foreach($obj as $ami)
            {
            echo $ami->getname().'<br />';
            } 
        $dbh = null;

    Avec pdo j'ai aucun soucis mais avec l'adapter Zend, il instancie pas ma classe ami et me retourne l'erreur suivante :
    Fatal error: Call to undefined method stdClass::getname()
    Avec PDO il instancie bien ma classe et connait la méthode getname()
    Quelqu'un pourrais me dire pq? Et Sinon comment y remédier avec le composant Zend_DB?

  2. #2
    Membre Expert 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
    Par défaut
    si tu veux travailler directement avec des objets tu peux utiliser Zend_Db_Table comme expliqué là :
    http://framework.zend.com/manual/fr/zend.db.table.html

  3. #3
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA
    Inscrit en
    Juin 2005
    Messages
    5 506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 506
    Par défaut
    Le fetchAll de ZF, ne correspond pas au fecthAll de PDO.

    dans ton cas peut-être que ceci le fera, sans garantie

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     
     
    $obj = $stmt->fetchObject(PDO::FETCH_CLASS,'ami');

Discussions similaires

  1. VC++ Direct3D8, problème avec LPD3DXFONT et LPD3DTEXTURE8
    Par Magus (Dave) dans le forum DirectX
    Réponses: 3
    Dernier message: 03/08/2002, 12h10
  2. Problème avec [b]struct[/b]
    Par Bouziane Abderraouf dans le forum CORBA
    Réponses: 2
    Dernier message: 17/07/2002, 11h25
  3. Problème avec le type 'Corba::Any_out'
    Par Steven dans le forum CORBA
    Réponses: 2
    Dernier message: 14/07/2002, 19h48
  4. Problème avec la mémoire virtuelle
    Par Anonymous dans le forum CORBA
    Réponses: 13
    Dernier message: 16/04/2002, 17h10

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