phpbar.de logo

Mailinglisten-Archive

[php] PHPLIB: extended functionality: Template

[php] PHPLIB: extended functionality: Template

=?iso-8859-1?Q?Bj=F6rn_Schotte?= bjoern_(at)_baer.main.de
Tue, 22 Aug 2000 11:13:39 +0200


Hi,

ein Karlstädter, wow. :)

> Kann mir jemand nen Tip geben, wo ich weitere Infos zu den Templates der
> PHPLIB bekomme?

Was interessiert dich denn genau?

> Oder kann mir jemand seine Erfahrungen mit den Templates kurz schildern?

Ich nutze mittlerweile nur noch die Templates. Zusammen mit
den OOHForms (ich weiß, einige werden jetzt ihre Gesichter
verziehen :-) erreicht man eine recht saubere Trennung von
PHP- und HTML-Code. Das sieht dann ungefähr so aus:

	$f = new form;

	$f->add_element(array(
			"type" => "hidden",
			"name" => "option",
			"value" => $option
			));

	$f->add_element(array(
			"type" => "text",
			"name" => "titel",
			"value" => $titel,
			"size" => 35
			));

	$f->add_element(array(
			"type" => "text",
			"name" => "dateiname",
			"value" => "$dateiname",
			"size" => 35
			));

	$f->add_element(array(
			"type" => "text",
			"name" => "autor",
			"value" => $autor,
			"size" => 40
			));

	$stpl = new Template;
	$stpl->set_file(array("seite" => "./templates/seite.tpl"));
	$stpl->set_unknowns("keep");

	$stpl->set_var(array(
			"FORM_TITLE" => $f->ge("titel"),
			"FORM_DATEINAME" => $f->ge("dateiname"),
			"FORM_AUTOR" => $f->ge("autor"),
			"FORM_SUBMIT" => $f->ge("eintragen")
			));


	$f->start();

	$stpl->parse("final","seite");
	$stpl->p("final");

	$f->finish();


Das Template seite.tpl wird geladen und entsprechende Ersetzungen
der Schlüsselwörter vorgenommen. Man kann auch noch mit Blöcken
arbeiten, z.B. wenn du eine Auflistung von Datensätzen machen möchtest.
Das ist auch sehr einfach, allerdings ist die Funktion set_block()
der PHPLIB kaputt, sie funktioniert nicht mit PHP4 (mal sehen, ob das
im CVS schon gefixt wurde).

In der Methode set_block() in template.inc steht muß es heißen:

$str = preg_replace($reg, "{"."$name}", $str);

Dann funktioniert es auch mit PHP4.

Falls du weitere Fragen hast, gerne per PM.

-- 
Online-Applikationen für das E-Business: <http://rent-a-phpwizard.de/>

          => inklusive Newsletter rund um PHP & das E-Biz <=


php::bar PHP Wiki   -   Listenarchive