Pour exécuter une requete
Bonjour,
Ma question va paraitre un peu bizarre, mais je débute en zend.
J'ai une table comme ceci :
Code:
1 2 3 4 5 6 7 8 9 10 11
| CREATE TABLE `commentaire` (
`id` INT NOT NULL AUTO_INCREMENT ,
`nom` VARCHAR( 255 ) NOT NULL ,
`email` VARCHAR( 255 ) NOT NULL ,
`contenu` VARCHAR( 255 ) NOT NULL ,
`idArticle` INT NOT NULL,
PRIMARY KEY ( `id` ),
KEY `com_art_fk_constraint` (`idArticle`),
CONSTRAINT `com_art_fk_constraint` FOREIGN KEY (`idArticle`)
REFERENCES `articles` (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8_unicode; |
Je souhaite récupérer tous les commentaires pour un article dont je connais son id, je procède donc ainsi :
IndexController
Code:
1 2 3 4 5 6 7 8 9 10
|
function voirarticleAction(){
$this->view->title="voir article";
$art = new Article();
$this->index = $this->_getParam('id',1);
$this->view->articles = $art->getArticle($this->index);
$com = new Commentaire();
$this->view->commentaires = $com->getCommentaireArticles($this->index);
} |
et la requete me permettant de récuperer les commentaire pour un articles:
Commentaire.php
Code:
1 2 3 4 5 6 7
|
class Commentaire extends Zend_Db_Table_Abstract {
public function getCommentaireArticles($id){
$select = $this->select();
$select->where('idArticle = ? ',$id);
return $this->fetchAll($select);
} |
Mais en lisant ce tuto :
http://www.reseaucerta.org/cotecours...html#id2534727
Je me demandais si c'était possible de le faire plus rapidement avec une méthode findRow,.. une classe Zend_Db_Table_Row_Abstract ou autre (j'avoue ne pas tout maitriser tout ma question) pour récupérer le meme résultat de ma requete.
En espérant avoir été clair.
Merci pour votre retour
cdt