Knud: html ausgeben funktioniert nicht :-(

Hallo,

hier mein Versuch, aus mehreren Template-Dateien eine Ausgabe zu erzeugen.
Leider gibt er nur den Code ausgeschrieben aus, also nicht interpretiert.
Wo ist denn nun der Fehler?

<?
header('Content-Type: application/octetstream');
header('Pragma: no-cache');
header('Expires: 0');

$headerfile  = "header.tpl";
$mainfile    = "main.tpl";
$footerfile  = "footer.tpl";

$headerdata = @implode('', (@file($headerfile)));
$maindata   = @implode('', (@file($mainfile)));
$footerdata = @implode('', (@file($footerfile)));

$htmldata = $headerdata.$maindata.$footerdata;

$htmldata = str_replace('"', '"', $htmldata);

eval("echo $htmldata");

?>

Danke Euch!

Gruß,

Knud

  1. hi

    header('Content-Type: application/octetstream');

    hier. Eigentlich soll da text/html rauskommen. (und dein Browser is kaputt, er müsste das Ding saugen)

  2. Hi,

    Leider gibt er nur den Code ausgeschrieben aus,
    also nicht interpretiert.

    Du willst damit sagen, daß der Quelltext Deiner PHP-Datei im Browserfenster angezeigt wird, ja?

    Dann hat Dein Webserver nicht verstanden, daß Du von ihm erwartest, für Dateien dieser Art (Endung? MIME-Typ? PHP verwendet da ziemlich 'interessante' Methoden) den PHP-Interpreter aufzurufen, statt den Inhalt einfach auszuliefern (wie es beispielsweise bei statischen HTML-Dateien korrekt wäre).

    Das Problem steckt in diesem Falle m. E. nicht in Deinem PHP-Skript, sondern in der Konfiguration Deines Webservers (bzw. der Installation von PHP).

    Viele Grüße
          Michael

    1. Hi,

      Du willst damit sagen, daß der Quelltext Deiner PHP-Datei im Browserfenster angezeigt wird, ja?

      ja.

      Dann hat Dein Webserver nicht verstanden, daß Du von ihm erwartest, für Dateien dieser Art (Endung? MIME-Typ? PHP verwendet da ziemlich 'interessante' Methoden) den PHP-Interpreter aufzurufen, statt den Inhalt einfach auszuliefern (wie es beispielsweise bei statischen HTML-Dateien korrekt wäre).
      Das Problem steckt in diesem Falle m. E. nicht in Deinem PHP-Skript, sondern in der Konfiguration Deines Webservers (bzw. der Installation von PHP).

      kann eigentlich nicht sein, da das thwboard auch auf dem Server läuft und das macht auch sowas.

      Merkwürdig ist auch, dass wenn ich den Quelltext anzeigen lassen möchte,
      dann will er "das" Dokument speichern und gibt als Grund den falschen Mime-typ an: application/x-unknown-content-type;

      header('Content-type: text/html');

      müsste das ganze doch als HTML deklarieren, oder nicht?

      Gruß,

      Knud

      1. Hi auch,

        Dann hat Dein Webserver nicht verstanden, daß Du von ihm erwartest,
        kann eigentlich nicht sein, da das thwboard auch auf dem Server läuft
        und das macht auch sowas.

        Solche Mappings können auch nur für Teilbäume Deiner Konfiguration gelten ...

        Merkwürdig ist auch, dass wenn ich den Quelltext anzeigen lassen möchte,
        dann will er "das" Dokument speichern und gibt als Grund den falschen
        Mime-typ an: application/x-unknown-content-type;

        Wer ist "er"?

        header('Content-type: text/html');
        müsste das ganze doch als HTML deklarieren, oder nicht?

        wenn das tatsächlich gesendet wird (ich kann kein PHP), und wenn der Webserver nicht selbst auch noch daran herum fullemt ... schau Dir mal an, was Dein Server tatsächlich als Header zu Deiner Seite sendet:
            (http://www.schroepl.net/cgi-bin/http_trace.pl)

        Viele Grüße
              Michael