Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 28-03-2009 15:36:11

fredouille312
Membre
Date d'inscription: 04-11-2008
Messages: 35

[Résolu][Zend_Db][1.6]lastInsertId ???

Bonjour à tous,

J'aimerais récupérer la valeur générée par mySql d'une colonne de clé primaire auto incrémentée.

voilà ce que j'ai trouvé dans le manuel :

Si votre table a été définie avec une clé auto-incrémentée, alors vous pouvez appeler la méthode lastInsertId() après une opération d'insertion. Cette méthode retourne la valeur auto-incrémentée, générée dans le cadre de la connexion au SGBD.

et le code qui va avec :

Code:

$db->insert('bugs', $data);
$id = $db->lastInsertId();

Le seul problème, c'est que pour les insert, j'utilise des Rows.

Mon modèle :

Code:

class Client extends Zend_Db_Table_Abstract{
    protected $_name = 'CLIENTS';
    protected $_primary ='NUMERO';
    protected $_referenceMap = array(
        rLocalite'=>array(
        'columns'=>'NUM_LOCALITE',
        'refTableClass'=>'Localite',
        'refColumns'=>'NUMERO'));

Mon Insert :

Code:

          $newClient = new Client(array('db'=>'my_db'));
          $rowClient = $newClient->createRow();
          $rowClient->NUMERO = $form->getValue('idClient');
          $rowClient->Nom = $form->getValue('nom');
          $rowClient->Save();

Le problème c'est que je ne peux pas faire un $rowClient->lastInsertId();

Dernière modification par fredouille312 (29-03-2009 22:08:09)

Hors ligne

 

#2 28-03-2009 16:21:19

baboune
Membre
Date d'inscription: 29-11-2008
Messages: 103

Re: [Résolu][Zend_Db][1.6]lastInsertId ???

mais tu peut faire :

Code:

$newClient = new Client(array('db'=>'my_db'));
$rowClient = $newClient->createRow();
$rowClient->NUMERO = $form->getValue('idClient');
$rowClient->Nom = $form->getValue('nom');
$rowClient->Save();
$id = $rowClient->id     ---------> "id est ta clé primaire dans ta table"

Hors ligne

 

#3 29-03-2009 22:07:13

fredouille312
Membre
Date d'inscription: 04-11-2008
Messages: 35

Re: [Résolu][Zend_Db][1.6]lastInsertId ???

C'est logique, j'y avais pas pensé merci.

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