Mailinglisten-Archive |
Ich habe mir mit meinen bescheidenen Kenntnissen ein einfaches Mysql-PHP-Content-Management-System geschrieben, das auch wunderbar läuft. In einer Tabelle sind die Seiteninhalte (pro Seite ein Datensatz) in einer zweiten Tabelle die gemeinsamen Elemente (Menü, Kopf, Fuß, CSS). Ich könnte das CMS nun noch viel schlagkräftiger machen und mir viele Wünsche erfüllen, wenn ich php-Code in die einzelnen Content-Felder einfließen lassen könnte, z.B. eine kleine Schleife für ein Selekt-Menü, ein Include-Befehl, das Datum oder sonstwas. Beispiel für die selbst definierte Funktion select_menue(): Datensatz 2, Name="Menue", Content= "blubber blah fasel <? select_menue(); ?> blah blah blah " oder: Content="blubber blah fasel <? if(isset($wasweissich)) include("hinweis.txt"); ?> blah blah blah" So wie hier geschrieben, geht das natürlich nicht, denn wenn das Feld "Content" eingelesen wird, bin ich ja schon mitten im php-Code. Natürlich funktioniert es auch ohne <? ?>-Tags nicht, wenn php-Code innerhalb einer Variablen auftauchen, wird dies als Text interpretiert, das ist mir mittleriweile auch klar. Kann mir jemand einen Tipp geben, wie man das am einfachsten löst? Muss ich mich in eval() einarbeiten (wobei die Datenbankinhalte ausschließlich von mir selbst stammen)? Muss eval innerhalb des Textes oder außerhalb verwendet werden? Gibt es einfachere Lösungen? Oder muss ich mit ersetzen-Befehl arbeiten? Und was ist mit den <? und ?> - Tags, müssen die verwendet werden werden? Das Beispiel oben ist natürlich ein blödes Beispiel, schon klar, aber es geht ja nur um's Demonstrieren. Das Ganze ist nur für kleinere, eigene Projekte gedacht, die ich bequem pflegen möchte. Es ist kein Template-System, sondern die einzelnen Datensatz-Felder werden in Variable verwandelt, evtl. aufbereitet und dann kommt die ganze Seite mit einem print-Befehl. (Vereinfacht: echo " <html><body><table><tr><td> $menue </td><td>$content</td></table> $fuss </body></html>";) In ein Templatesystem wollte ich mich bewusst nicht einarbeiten (ich tu's nur wenn's nicht anders geht). Und zu meinem Kenntnisstand: Ich mache php seit drei Jahren und kann sonst überhaupt nicht programmieren. Grüße Peter -- Peter Burkes www.burkes.de www.user-archiv.de
php::bar PHP Wiki - Listenarchive