Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 07-02-2008 14:34:53

allfab
Membre
Date d'inscription: 02-10-2007
Messages: 40

[ZF 1.0.3] Problème Zend_Db_Table_Abstract - [Résolu]

Bonjour,

J'ai étendu la classe Zend_Db_Table_Abstract comme il est conseillé de faire pour travailler avec la BDD. Jusqu'a maintenant j'utilisais la méthode insert() pour pouvoir ajouter des lignes dans ma table, cependant, je voudrais récupérer le dernier identifiant de ma table et du coup, j'ai lié ma classe Post_Table qui étend la classe Zend_Db_Table_Abstract avec la classe Post_Row qui étend Zend_Db_Table_Row pour pouvoir utiliser le méthode save().

Donc j'ai écris ce code comme le conseille Sekaijin  :

Code conseillé :

Code:

// users est une classe étendant Zend_Db_Table_Abstract
$users = new users();
$user = $users->createRow(array('usr_name' => 'Jean'));
$user->save();
//$user est l'enregistrement ajouté à la base mais il est au passage 
//complété de toutes les valeur par défaut qui n'ont pas été renseigné lors de l'enregistrement.
$lastUserId = $user->usr_id;

Mon code adapté :

index.php (bootstrap) :

Code:

    //CHARGEMENT DE MA CLASSE
    Zend_Loader::loadClass('Post_Table');

Post_Table.php :

Code:

class Post_Table extends Zend_Db_Table_Abstract
{
    /*
    * @nom table sql correspondante
    */
    protected $_name = "zfsp_posts";
    /*
    * @nom table sql correspondante
    */    
    protected $_rowClass = 'Post_Row';
    /*
    * @Clé primaire de ma table ZFSP_POSTS
    */        
    protected $_primary = 'id_post';
    /*
    * @var string
    */    
etc...

Post_Row.php :

Code:

Class Post_Row extends Zend_Db_Table_Row {
}

Mon controller :

Code:

    $this->_post = new Post_Table();
    $this->_post->createRow($data);
    $this->_post->save();

Une fois que j'ai codé tout cela, que j'essaie d'ajouter mes données à la base en ayant pris le soin de formater mes données de telles façons que $data est un tableau avec ses clés correspondants aux noms des champs,
j'obtiens cette exception :

Code:

Fatal error: Call to undefined method Post_Table::save() in Mon controller au ligne correspondante à save()..

Si quelqu'un a une idée...je galère depuis ce matin, je dois surement oublier quelques choses mais je n'arrive plus à voir ce que ça peut être...

Merci
Bon après midi

Dernière modification par allfab (07-02-2008 16:21:05)

Hors ligne

 

#2 07-02-2008 15:20:12

sekaijin
Membre
Date d'inscription: 17-08-2007
Messages: 1137

Re: [ZF 1.0.3] Problème Zend_Db_Table_Abstract - [Résolu]

Code:

   $this->_post = new Post_Table();
    $myRow = $this->_post->createRow($data);
    $myRow->save();

Dernière modification par sekaijin (07-02-2008 15:20:43)

Hors ligne

 

#3 07-02-2008 16:20:36

allfab
Membre
Date d'inscription: 02-10-2007
Messages: 40

Re: [ZF 1.0.3] Problème Zend_Db_Table_Abstract - [Résolu]

Merci, je suis vraiment trop c** des moments....

ça marche désormais beaucoup mieux !!

Hors ligne

 

#4 07-02-2008 16:36:29

sekaijin
Membre
Date d'inscription: 17-08-2007
Messages: 1137

Re: [ZF 1.0.3] Problème Zend_Db_Table_Abstract - [Résolu]

non on est tous pareil lorsqu'on a le truc devant le nez depuis trop longtemps on ne vois pas le pb
A+JYT

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages