Objektorientiertes Programmieren - Seiten mit $_GET

ReqonxS

Mitglied
Guten Tag,
Ich bin dabei das objektorientierte Programmieren zu lernen und habe eine Klasse für die Templates in Smarty geschrieben.
Ich habe eine index.php bei dem man mit dem " P " Parameter die Seiten angibt, z.B.:
index.php?p=kontakt

So, nun möchte ich aber zum Beispiel garkeine Seite inkludieren sondern, ich möchte den Besucher auf der Seite mit dem folgendem Link ausloggen:
index.php?p=logout

Also wie könnte ich diesen Code vernünftig in das Objektorientierte konvertieren.
PHP:
<?php
    class Template {
        private $page;
       
        public function getTemplate($header = 1, $footer = 1) {
            global $Smarty;
           
            if(isset($_GET["p"]))
            {
                $this->page = $_GET["p"];
            }
           
            if($header != 0) {
                $Smarty->display("./sources/".Config("site_template")."/header.tpl");
            }
            $file = "./sources/".Config("site_template")."/".$this->page.".tpl";
            if(file_exists($file)) {
                $Smarty->display($file);
            } else {
                $Smarty->display("./sources/".Config("site_template")."/index.tpl");
            }
            if($footer != 0) {
                $Smarty->display("./sources/".Config("site_template")."/footer.tpl");
            }
        }
    }
?>
 
Wenn man es genau nimmt, hat die Auswertung der Anzeige der Seite nicht im Template statt zu finden. Das sollte der Frontcontroller übernehmen. Schau dir mal das MVC-Pattern an.
 
Hast du eigentlich auch ein Buch gelesen, wo Smarty direkt am Anfang als guter OOP Einstieg dargestellt wird?
 

Neue Beiträge

Zurück