$liste_news[$row->getId()][$row->getLangue()][] = $row->getCorps(); $liste_news[$row->getId()][$row->getLangue()] = array('titre' => $row->getTitre(), 'corps' => $row->getCorps()); } $obj_page->setData('news', $liste_news); $tab_langue = Config::get('tab_lang'); arsort($tab_langue); $obj_page->setData('langue', $tab_langue); $obj_page->setUrlPage('news/news'); } else { if ($http_request['act'] == 'ajouter') { $tab_langue = Config::get('tab_lang'); $obj_page->setData('langue', $tab_langue); $obj_page->setUrlPage('news/news_ajouter_editer'); } else { if ($http_request['act'] == 'detail') { $tab_news = NewsManager::get($http_request['id']); $obj_page->setData('news', $tab_news); $obj_page->setData('date_a', substr($tab_news[0]->getDate(), 0, 10)); $obj_page->setData('heure_a', substr($tab_news[0]->getDate(), 11, 2)); $obj_page->setData('minute_a', substr($tab_news[0]->getDate(), 14, 2)); $editer = true; $obj_page->setData('editer', $editer); $tab_langue = Config::get('tab_lang'); $obj_page->setData('langue', $tab_langue); $obj_page->setUrlPage('news/news_ajouter_editer'); } else { if ($http_request['act'] == 'insert') { $intitule = isset($http_request['intitule']) && $http_request['intitule'] != '' ? $http_request['intitule'] : null; $date_a = isset($http_request['date_a']) && $http_request['date_a'] != '' ? $http_request['date_a'] : null; $heure_a = isset($http_request['heure_a']) && $http_request['heure_a'] != '' ? $http_request['heure_a'] : null; $minute_a = isset($http_request['minute_a']) && $http_request['minute_a'] != '' ? $http_request['minute_a'] : null;
} // La class NewsManager class NewsManager2 { protected $dao; // On souhaite un objet instanciant une classe qui implémente iDB. public function __construct(iDB $dao) { $this->dao = $dao; } public function get($id) { $q = $this->dao->query('SELECT id, auteur, titre, contenu FROM news WHERE id = ' . (int) $id); // On vérifie que le résultat implémente bien iResult. if (!$q instanceof iResult) { throw new Exception('Le résultat d\'une requête doit être un objet implémentant iResult'); } return $q->fetchAssoc(); } } // Tester le code $dao = new MyPDO('mysql:host=localhost;dbname=news', 'root', ''); // $dao = new MyMySQLi('localhost', 'root', '', 'news'); $manager = new NewsManager($dao); print_r($manager->get(2)); ?> </p> </section> </div> </body> </html>