findOne('SELECT * FROM '.$this->sTable.' WHERE id=?',$uId ); } public function findAll(){ return $this->findMany('SELECT * FROM '.$this->sTable.' ORDER BY id ASC'); } public function findAllOrderBy($sField,$sSide){ if($sSide=='asc'){ $side='ASC'; }else{ $side='DESC'; } return $this->findMany('SELECT * FROM '.$this->sTable.' ORDER BY ? '.$side,$sField); } public function findAllOrderByPriority(){ return $this->findMany('SELECT * FROM '.$this->sTable.' ORDER BY priority DESC'); } public function findManyByAuteur($auteur_id){ return $this->findMany('SELECT * FROM '.$this->sTable.' WHERE auteur_id=?',$auteur_id); } /* public function findById($id){ $smt=$this->getSgbd()->getPdo()->prepare('SELECT * FROM article WHERE id=:id'); $smt->bindValue(':id',$id); $smt->execute(); $r=$smt->fetch(); return $r; } */ } class row_article extends abstract_row{ protected $sClassModel='model_article'; public function findAuteur(){ return model_auteur::getInstance()->findById($this->auteur_id); } /*exemple test validation*/ private function getCheck(){ $oPluginValid=new plugin_valid($this->getTab()); $oPluginValid->isNotEmpty('titre','Le titre doit être saisi'); $oPluginValid->matchExpression('auteur_id','/[0-9]/','Vous devez indiquer un auteur'); /* renseigner vos check ici $oPluginValid->isEqual('champ','valeurB','Le champ n\est pas égal à '.$valeurB); $oPluginValid->isNotEqual('champ','valeurB','Le champ est égal à '.$valeurB); $oPluginValid->isUpperThan('champ','valeurB','Le champ n\est pas supé à '.$valeurB); $oPluginValid->isUpperOrEqualThan('champ','valeurB','Le champ n\est pas supé ou égal à '.$valeurB); $oPluginValid->isLowerThan('champ','valeurB','Le champ n\est pas inférieur à '.$valeurB); $oPluginValid->isLowerOrEqualThan('champ','valeurB','Le champ n\est pas inférieur ou égal à '.$valeurB); $oPluginValid->isEmpty('champ','Le champ n\'est pas vide'); $oPluginValid->isNotEmpty('champ','Le champ ne doit pas être vide'); $oPluginValid->isEmailValid('champ','L\email est invalide'); $oPluginValid->matchExpression('champ','/[0-9]/','Le champ n\'est pas au bon format'); $oPluginValid->notMatchExpression('champ','/[a-zA-Z]/','Le champ ne doit pas être a ce format'); */ return $oPluginValid; } public function isValid(){ return $this->getCheck()->isValid(); } public function getListError(){ return $this->getCheck()->getListError(); } public function save(){ if(!$this->isValid()){ return false; } parent::save(); return true; } }