[php]template problemen

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • simon
  • Registratie: Maart 2002
  • Laatst online: 11:40
Ik gebruik yapter voor templates, maar Yapter kan geen php includen.

Het zit dus zo, ik heb een forum, waarin in een tabel dus een MySQL query staat, nu wil ik dat netjes omzetten tot templates enz. Maar, omdat er nogal veel data niet in variabelen staat, en soms ook niet zomaar kan, wil ik dus eigenlijk een externe file includen... Want, het lukt me niet om met yapter eerst een deel te parsen, en later weer een deel..

Moet ik overschakelen naar een andere template parser, of is er een andere oplossen :?

|>


Acties:
  • 0 Henk 'm!

Verwijderd

Je wilt in de .tpl file een andere file includen? Dat kan met Smarty wel: smarty.php.net.

Acties:
  • 0 Henk 'm!

  • simon
  • Registratie: Maart 2002
  • Laatst online: 11:40
Verwijderd schreef op 15 December 2002 @ 10:54:
Je wilt in de .tpl file een andere file includen? Dat kan met Smarty wel: smarty.php.net.
eigenlijk wil ik een php file in tpl include, kzal eens naar smarty kijken :)

Ik krijg de hele tijd deze error:

Warning: Smarty error: unable to read template resource: "index.tpl" in c:\apache\htdocs\rommel\test2\Smarty.class.php on line 589

[ Voor 24% gewijzigd door simon op 15-12-2002 11:08 ]

|>


Acties:
  • 0 Henk 'm!

Verwijderd

Simon schreef op 15 december 2002 @ 10:57:
[...]


eigenlijk wil ik een php file in tpl include, kzal eens naar smarty kijken :)

Ik krijg de hele tijd deze error:

Warning: Smarty error: unable to read template resource: "index.tpl" in c:\apache\htdocs\rommel\test2\Smarty.class.php on line 589
en wat denk je dat dat betekend.. ? ?? die index.tpl staat niet in de map waar smarty staat!!

Acties:
  • 0 Henk 'm!

Verwijderd

verder kan je altijd nog met ob_start en ob_get_content een file openen

ob_start
include bla bla
$content = ob_get_contents;
enz enz

en dan $tpl->assign ("content", $content);

kan dus ook ..

edit:
De goede code:

PHP:
1
2
3
4
5
6
7
8
9
10
<?php
ob_start(); 
include ("het_bestand.php");
$data = ob_get_contents(); 
ob_end_clean();

echo $data;
// of
$tpl->assign ("KEY", $data);
?>

[ Voor 36% gewijzigd door Verwijderd op 15-12-2002 11:29 ]


Acties:
  • 0 Henk 'm!

  • simon
  • Registratie: Maart 2002
  • Laatst online: 11:40
Verwijderd schreef op 15 December 2002 @ 11:24:
[...]

en wat denk je dat dat betekend.. ? ?? die index.tpl staat niet in de map waar smarty staat!!
das nie waar, hij staat er wel :)

|>


Acties:
  • 0 Henk 'm!

Verwijderd

Simon schreef op 15 December 2002 @ 11:28:
[...]


das nie waar, hij staat er wel :)
oke.. maar werkt mijn manier niet:

PHP:
1
2
3
4
5
6
7
8
9
10
<?php
ob_start(); 
include ("het_bestand.php");
$data = ob_get_contents(); 
ob_end_clean();

echo $data;
// of
$tpl->assign ("KEY", $data);
?>


??

Acties:
  • 0 Henk 'm!

  • MisterData
  • Registratie: September 2001
  • Laatst online: 29-08 20:29
*spam* Schrijf je eigen template-engine, heb ik ook gedaan (stackbased). Even doorzetten (ruim 800 regels code) maar het resultaat is snel en werkt erg goed (deze site gebruikt em al, met deze templatefiles). Hier heb ik een test-pagina staan waar je kunt zien dat het goed werkt: http://quatro.ath.cx/cms/include/tpltest.php :)

Acties:
  • 0 Henk 'm!

Verwijderd

Simon schreef op 15 December 2002 @ 10:38:
Ik gebruik yapter voor templates, maar Yapter kan geen php includen.

Het zit dus zo, ik heb een forum, waarin in een tabel dus een MySQL query staat, nu wil ik dat netjes omzetten tot templates enz. Maar, omdat er nogal veel data niet in variabelen staat, en soms ook niet zomaar kan, wil ik dus eigenlijk een externe file includen... Want, het lukt me niet om met yapter eerst een deel te parsen, en later weer een deel..

Moet ik overschakelen naar een andere template parser, of is er een andere oplossen :?
Je mag rustig meerder Template objecten maken... die kun je dan afzonderlijk parsen. de getContents() van de ene stop je dan in een variabele van de andere.

Overigens is je opmerking "omdat er nogal veel data niet in variabelen staat" wel erg wazig...

Acties:
  • 0 Henk 'm!

  • simon
  • Registratie: Maart 2002
  • Laatst online: 11:40
Verwijderd schreef op 15 December 2002 @ 11:30:
[...]

oke.. maar werkt mijn manier niet:

PHP:
1
2
3
4
5
6
7
8
9
10
<?php
ob_start(); 
include ("het_bestand.php");
$data = ob_get_contents(); 
ob_end_clean();

echo $data;
// of
$tpl->assign ("KEY", $data);
?>


??
dat is nu dus ook de oplossing ;)

|>

Pagina: 1