Christian Kruse: PHP und externe Tenplates

Beitrag lesen

Hi,

a) ein Template einbinden kann

Wenn der Inhalt unterschiedlich sein soll, dann mit fread(),
ansonsten mit require() oder include()

b) welcher Dateityp (txt oder htm) sich am besten eignet?

das ist völlig egal, sind ja sowieso nur Text-Daten... Windows-User
sind viel zu gebunden an Endungen ,))

Ich möchte, zB bei einem Formmailer, dass die Daten aus dem
Formular, die als Variable ja bereits verfügbar sind, in ein
Template, welches sich in einer externen Datei befindet,
"eingebunden" und dann zusammen ausgegeben werden.

meinst du etwas wie

<input type="typ" name="t1" value="<?php echo $t1; ?>">

? wenn ja, dann macht man das am besten so:

Man definiert ein Template mit dem Formular und so, z. B. so:

-------- template.dat ------------
<form name="myform" action="myaction.php" method="post">
<input type="text" name="inhalt[txt1]" value="[txt1]">
<input type="text" name="inhalt[txt2]" value="[txt2]">
<input type="text" name="inhalt[txt3]" value="[txt3]">
</form>
----------------------------------

Dann in der PHP-Datei:

------- template2html.php --------
<?php

$fd = fopen("template.dat","r");
$inhalt = fread($fd,filesize("template.dat"));
fclose($fd);

while(list($k,$v) = each($inhalt)
  {
  $inhalt = ereg_replace("[$k]",$v,$inhalt);
  }
?>
<html>
<head>
<title>mein template-2-html-scripter</title>
</head>
<body>

<?php echo $form; ?>

</body>
</html>

Mit readfile gehts nichts und bei include müsste ich ja die
Template-Datei selbst wieder mit php-Code "spicken", was genau
nicht sein soll (wenn machbar).

Naja, man _muß_ das nicht, nur kann man die Werte dann nicht
übernehmen ,))

Wie kann das gehen?
Kann ich die Vorlage "einfach so" öffnen oder muss ich sie
irgendwie "umformen"?

require("vorlage.html");

"vorlage.html" kann dabei eine ganz stinknormale HTML-Datei sein.

mfg
CK1