Example #1
0
        $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>