phpbar.de logo

Mailinglisten-Archive

[php] PHPLib > Templates

[php] PHPLib > Templates

Olaf Gleba php_(at)_phpcenter.de
Wed, 23 Oct 2002 15:46:26 +0200


Tach,

nachdem ich jetzt stundenlang in den doc`s und im Netz gesucht habe müsst
doch ihr wieder dran glauben...

Ich habe, u.a dank eurer Hinweise, den Install der PHPlib hier lokal zum
Testen angegangen. MacOSX, PHP 4.2.3, mysql 3.23.39

Die php.ini läuft (vorläufig) mit register_globals = On, track_vars,
magic_quotes_gpc ebenfalls und der auto_prepend_path ist übergreifend hier
in der php.ini gesetzt,  include_path ebenfalls.

Alles läuft, kann angesprochen werden, DB connect etc.. Wunnebar.

Nur mit der Templates Funktionalität komme ich nicht zu Rande.

Was ich habe:
- ein probe.htm ( die Template Datei, in der im die Platzhalter definiert
sind)
- ein tbl_code.php (Script in dem die Generierung abläuft)

Pfade:
tbl_code.php = Gleiche Verzeichnis wie sämtliche .inc Dateien der PHPLib
(heißt hier: "php"); parallel zum Server Root Verzeichnis (heißt hier:
Documents)

probe.htm = Liegt in dem Unterverzeichnis "/templates" im Document Root

tbl_code.php:
<?php
include "template.inc";
$varprobe = "hier der text";
$t = new Template ("/Library/WebServer/Documents/templates");
$t->set_file("dashandle", "probe.htm");
$t->set_var("TITEL" ,$varprobe);
$t->parse("MyOutput", "dashandle");
$t->p("MyOutput");
?>

probe.htm:
<html>
<head>
<titel>Probe</title>
</head>
<body>
<h2>{TITEL}</h2>
</body>
</html>


Funktioniert nicht. Kann es meiner Meinung nach auch nicht. Wenn ich
"probe.htm" aufrufe, ohne irgendeinen Verweis auf die tbl_code.php - wie
soll das gehen ?!?
Include ich diese Datei bekomme ich, ebenso verständlich auch nur folgenden
Error: "Fatal error: Cannot redeclare class template in
/Library/WebServer/php/template.inc on line 12" da ich die "template.inc"
schon in der "prepend.php3", die ja global über die php.ini eingebunden ist
schon auskommentiert habe, bzw. als "require" reingesetzt habe.
Schmeiße ich diese aus der "prepend.php3" wieder raus, bekomme ich zwar den
Fehler nicht mehr, aber geparst wird dann natürlich wieder nichts.

"page_open();" und "page_close();" hat hier doch nichts verloren, oder ?
Welche Argumente sollte ich denn übergeben ? Laut Manual ist dies für die
Templates nicht möglich bzw. notwendig.

Dumm, das alle Tut`s die ich gefunden habe, keine weiteren Infos liefern,
sondern ausschließlich das oben geschilderte Procedere, das ja nun die
simpelste Form darstellt, schildern.

Was ist falsch, bzw. fehlt ?

Danke im Voraus!
gruss
olaf



--
Olaf Gleba | creatics media&systems
http://www.creatics.de | mailto:og_(at)_creatics.de



--
creatics media&systems
Hackhauser Str.54 | 42697 Solingen
Tel. 0212 3832-94-30 | Fax 0212 3832-94-31
http://www.creatics.de | mailto:admin_(at)_creatics.de


php::bar PHP Wiki   -   Listenarchive