CMS - Modul Einbindung

Hallo,

zurzeit bin ich an der Arbeit ein sehr simples CMS zu programmieren, privat versteht sich.

Es soll vorwiegend Modul Support haben und nicht zu viel Schnick Schack. Diese können im ACP selber definiert bzw. selektiert werden. Allerdings, stehe ich vor einem Problem bei der Modul Implementierung.
Da es sehr einfach sein soll, werde ich die einzelne Module in MySql abzuspeichern.
Ich habe wie folgt gedacht, wie ich diese Module einbinde bei entsprechenden Seiten aufruf.

  1. Beim Seitenaufruf, lade ich den von MySql und speichere diesen Temporär in Dateien und führe ihn mittels include aus. Da stellt sich ein Problem, wenn viele User die entsprechende Seite aufrufen, werden ja entsprechend viele Dateien erstellt. Das wäre dann eine schlechte Idee.

  2. Ich führe den Code mittels Eval aus. Aber da stellt sich das Problem, das wenn ich mich mal beim Code vertippe, werden ja Exceptions ausgeben. Dies möchte ich aber vermeiden. Aber wie kann ich Fehler abfangen.

Falls jetzt jemand denkt, wie ich auf die Schnapps Idee gekommen bin entsprechenden Code in MySql einzubinden?! Das liegt ganz einfach daran, weil ich nicht jedesmal FTP anmachen muss, um die einzelne Datei hochzuladen. Und ich müsste dann für die Fehler Implementierung aufwändige Klassen schreiben und dessen Module dann entsprechend ein klassen Gerüst haben müssen. Da dies mir wesentlich zu viel Aufwand ist, sowas zu machen. Es würde unmengen an Zeit verschlingen, und das kann ich mir nicht leisten. Deswegen diese Methode. Da es ja auschließliczh für meine Seite ist.

Wie würdet ihr vorgehen?

Zunächst würde ich mir auf meinem lokalen Rechner eine Entwicklungsumgebung einrichten: Apache, PHP, MySQL, Eclipse

Die Module werden dann ausschliesslich lokal programmiert und getestet. Sobald sie produktionsreif sind, können sie per FTP auf den Webserver verschoben werden.

p.s. OOP ist der eleganteste Weg, um gute Module zu entwickeln.

evil is devil :wink:
würde ich nicht machen mit den evil weil wenn deine DB gehackt wird einfach den code ändern und man kann noch viel mehr schaden anrichten also ich machs so…

ich hab ne sysCore klasse da is ne modul funktion als public function drinne so in der db stehen die modul infos drinne also shortcut klassenpfad klassenname etc…

so in der ausgabe klasse gibts ne function die output() heißt…

dann lass ich das shortcut einfach durch output() ersetzten hoffe du weist wie ich mein…

$modul = sysCore::ModulObj()->Load(„MODULNAME“);
$content = str_replace(„{SHORTCUT}“, $modul, $content);

hoffe mal du verstehst wie ich des meine ^^ wenn nicht kannste es dir aus mienem cms ja rauskopieren wenns öffentlich wird…

und wie gesagt installier xampp o.ä.