Einbindung externer Skripte

Übersicht

  • Allgemeines zu dynamischen Skripten.
  • Definition im Template.
  • Definition in der CONTENT-Datei.
  • Allgemeines zu dynamischen Skripten

    Bei phpCMS könnt Ihr beliebig viele dynamische Skripte einbinden. Im folgenden wird beschrieben, wie Ihr Eure bestehenden PHP-Skripte einbindet. Derzeit ist die Skripteinbindung noch sehr neu, so ist die Header-Ausgabe noch etwas "tricky". :-) Für eine korrekte Ausgabe sind Angaben in der TEMPLATE-Datei und in der CONTENT-Datei erforderlich.

    Definition im Template

    In der Template-Datei vermerkt Ihr einfach einen Platzhalter der mit den Zeichen "{SCRIPT" beginnt. Natürlich wie immer ohne Anführungszeichen. Darauf folgt ein eindeutiger Bezeichner für dieses Skript. Die komplette Definition siehr dann in etwa so aus:

    {SCRIPT_NR1}

    Dieser Platzhalter wird immer dort im Template eingefügt, wo die Skriptausgabe erfolgen soll. Wenn Eure Skripte HTTP-Header ausgeben, ist es erforderlich, daß Ihr den Inhalt dieser Skripte in zwei Dateien aufteilt und an erster Stelle des Templates jenes Skript einbindet, das den HTTP-Header ausgibt.

    Definition in der CONTENT-Datei

    Ihr entscheidet in jeder CONTENT-Datei, ob und welches Skript eingebunden werden soll. Das geschieht mit dem Feld "{SCRIPT" - wieder ohne Anführungszeichen - gefolgt von dem eindeutigen Bezeichner, z.B. also:

    {SCRIPT_NR1} ./guestbook.php

    wenn das Skript "guestbook.php" im selben Verzeichnis liegt, wie Eure Content-Datei. Ich benutze immer relative Pfadangaben, weil so die Übertragung von einem Server auf einen anderen Server einfacher ist. Habt Ihr in Eurer CONTENT-Datei kein entsprechendes Skript-Feld, wird der Eintrag im Template bei der Ausgabe einfach ignoriert. Valide Pfadangaben sind z.B.:

    {SCRIPT_NR1} ./guestbook.php
    {SCRIPT_NR1} ../cgi-bin/guestbook.php
    {SCRIPT_NR1} $home/cgi-bin/guestbook.php
    {SCRIPT_NR1} /cgi-bin/guestbook.php

    Wenn Ihr die Variable "$home" einsetzt, muß diese in der PROJECT-Datei definiert sein.