Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 15-05-2007 09:30:44

lecra
Membre
Date d'inscription: 15-05-2007
Messages: 12

[Résolu] Cherche équivalent de select max(id)

Bonjour,

Depuis hier je tourne en rond et je ne trouve pas la solution pour extraire la valeur maximale d'un champ

Code:

select max(champ) from table

en utilisant zend framework.

Est-ce que quelqu'un pourrait m'expliquer la procédure ?

Merci

Hors ligne

 

#2 15-05-2007 10:56:47

haltabush
Membre
Lieu: Saumur
Date d'inscription: 20-04-2007
Messages: 64

Re: [Résolu] Cherche équivalent de select max(id)

C'est relativement simple.
L'objet $db représente le dbAdapter.

Code:

$select=$db->select();
$select->from('table', 'maximum'=>'max(champ)');
$result=$db->fetchOne($select);

Ca devrait être ça, enfin en gros quoi tongue

Hors ligne

 

#3 15-05-2007 11:07:02

lecra
Membre
Date d'inscription: 15-05-2007
Messages: 12

Re: [Résolu] Cherche équivalent de select max(id)

merci,

mais je comprend pas bien comment je défini le dbAdapter.
Est-ce que c'est la classe qui contient le nom de la table qu'on met dans le dossier "models" ?

Hors ligne

 

#4 15-05-2007 11:29:19

haltabush
Membre
Lieu: Saumur
Date d'inscription: 20-04-2007
Messages: 64

Re: [Résolu] Cherche équivalent de select max(id)

Non, ça ca doit être plutot le code que tu dois mettre dans le modele, enfin je ne sais pas trop.
Le dbAdapter, c'est simplement ta  base de donnée qui doit être déclarée sur l'index je pense.
Il est déclaré comme ça dans mon cas :

Code:

//DB init
Zend_Loader::loadClass('Zend_Db');
Zend_Loader::loadClass('Zend_Db_Table');
$params = array(
    'host'     => DB_SERVER ,
    'username' => DB_USER ,
    'password' => DB_PASSWORD ,
    'dbname'   => DB_NAME
);
$dbAdapter = Zend_Db::factory(DB_TYPE,$params);

Hors ligne

 

#5 15-05-2007 11:34:07

lecra
Membre
Date d'inscription: 15-05-2007
Messages: 12

Re: [Résolu] Cherche équivalent de select max(id)

moi aussi mais quand je suis dans un controller, je n'ai pas accés à mon $dpAdapter

Hors ligne

 

#6 15-05-2007 11:37:49

Isilgawen
Membre
Lieu: Limoges
Date d'inscription: 23-03-2007
Messages: 106

Re: [Résolu] Cherche équivalent de select max(id)

Il suffit de le mettre dans le registre :

Code:

Zend_Db_Table::setDefaultAdapter($dbAdapter);
Zend_Registry::set("db",$dbAdapter);

Aprés il est accessible d'ou tu veux dans ton appli avec Zend_Registry::get("db");

Dernière modification par Isilgawen (15-05-2007 11:39:46)

Hors ligne

 

#7 15-05-2007 11:39:12

lecra
Membre
Date d'inscription: 15-05-2007
Messages: 12

Re: [Résolu] Cherche équivalent de select max(id)

ok merci je vais faire un petit test

Hors ligne

 

#8 15-05-2007 11:43:38

lecra
Membre
Date d'inscription: 15-05-2007
Messages: 12

Re: [Résolu] Cherche équivalent de select max(id)

Merci, ça roule

Hors ligne

 

#9 16-08-2007 17:09:31

nadia2507
Membre
Date d'inscription: 03-08-2007
Messages: 27

Re: [Résolu] Cherche équivalent de select max(id)

slt tout le monde
j'ai le méme probleme, mais quand j'ai fais:
$select->from('table', 'maximum'=>'max(champ)');
il me donne l'erreur:
Parse error unexpected T_DOUBLE_ARROW, sur cette ligne
j'ai cherché et j'ai trouvé que je derais mettre
$select->from('table', 'maximum'>='max(champ)');
>= au  llieu de =>;
quand je l'ai mis je n'ai ppas d'erreur mais il me selectionne le min au lieu du max que je veux
j'attend votre aide sur ce coup!!

Hors ligne

 

#10 20-08-2007 07:52:19

Isilgawen
Membre
Lieu: Limoges
Date d'inscription: 23-03-2007
Messages: 106

Re: [Résolu] Cherche équivalent de select max(id)

essaye plutot comme cela :

Code:

$select->from('table', array('maximum'=>'max(champ)'));

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