Ik heb FastTemplate gedownload, de gehele documentatie gelezen. Als ik de standaard fasttemplate code upload dan ziet hij 2 dingen fout.
1. Er bestaat een functie dubbel, dit levert de volgende errorcode op:
Fatal error: Cannot redeclare clear_parse() in /dedirvanmijnsitedieikgegeimwildouden/class.FastTemplate.php3 on line 636.
Ik haal de functie van regel 636 weg(op rem zetten), dan doet hij al iets meer.
2. Er zat een fout in dat hij alles tussen {} in de oudere php als gewone haakjes ziet en in de php die ik draai ziet hij het als een waarde als er een string tussenstaat.
Ook stonden de strings tussen aanhalingtekens, deze heb ik verwijderd waardoor het iets sneller werkt.
3. Ik krijg de volgende code niet werkend:
bla.php
en
header.tpl
list_ran.tpl
Als ik dit uitvoer krijg ik dit te zien:
ERROR: get_template() failure: [./templates/Eenwebsite.com/]
Deze fout wordt veroorzaakt door de regel: $tpl->parse(LISTRANS,".listran");
Dit kan ook wel kloppen, want ik snap niet(en staat niet goed in help/voorbeelden waarom etc) die LISTRANS er moet staan, deze stond standaard op ROWS, maar vedder werdt er zowel in het voorbeeld php filetje als in de 2 gebruikte tpl files de text ROWS nergens gebruikt. Dus ik snap niet wat ik met die waarde moet doen.
Ook de standaard functie wekrt niet die vanuit fasttemplate is. dus de example_dynamic.php.
Dan zie ik de text ROWS staan. Ik draai die example_dynamic wel MET de veranderde code omdat het anders gewoonweg NIET werkt.
General server information
Operating system: Linux
Apache version: [GUM]
PHP version 4.3.1
Waarom werkt FastTemplate niet met php 4.3.1? En waarom werkt mijn dynamic niet goed?
En als FastTemplate niet te gebruiken is met PHP 4.3.1 waar kan ik dan een andere zeer goeie TPl engine vinden? De functionaliteid van FastTemplate is goed, deze opbouw moet ik hebben, dus templates met max 1 file per pagina heb ik gewoon niets aan.
1. Er bestaat een functie dubbel, dit levert de volgende errorcode op:
Fatal error: Cannot redeclare clear_parse() in /dedirvanmijnsitedieikgegeimwildouden/class.FastTemplate.php3 on line 636.
Ik haal de functie van regel 636 weg(op rem zetten), dan doet hij al iets meer.
2. Er zat een fout in dat hij alles tussen {} in de oudere php als gewone haakjes ziet en in de php die ik draai ziet hij het als een waarde als er een string tussenstaat.
Ook stonden de strings tussen aanhalingtekens, deze heb ik verwijderd waardoor het iets sneller werkt.
PHP:
1
2
3
4
5
| //oud $a = str_replace("{$value}","$with","$a"); //nieuw $a = str_replace("{".$value."}",$with,$a); |
3. Ik krijg de volgende code niet werkend:
bla.php
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
| $tpl = new FastTemplate("./templates/".$tpl_use); $start = $tpl->utime(); // Benchmarking $tpl->define( array( header => "header.tpl", ran_list => "ran_list.tpl" ) ); $tpl->assign(array( TITLE => "Blaat een title") ); //Begin with functions for RAN if (1==2) { } else { $tpl->define_dynamic ("listran","table"); $sql = mysql_query("SELECT * FROM {$database_prefix}_ [kunstmatige enter]{$database_file}_list ORDER BY id;"); while ($sql_i=mysql_fetch_array($sql)) { $tpl->assign(array( RANNAME => $sql_i['name'], RANINTRO => $sql_i['intro'] )); $tpl->parse(LISTRANS,".listran"); } } $tpl->parse(MAIN, array("ran_list","header")); $tpl->FastPrint(); |
en
header.tpl
code:
1
2
3
4
5
6
7
8
| <!-- // START: header.tpl // --> <HTML> <HEAD> <TITLE>{TITLE}</TITLE> </HEAD> <BODY> {CONTENT} <!-- // END: header.tpl // --> |
list_ran.tpl
code:
1
2
3
4
5
6
7
8
9
10
11
12
| <!-- NAME: ran_list.tpl --> <table> <!-- BEGIN DYNAMIC BLOCK: listran --> <tr> <td>{RANNAME}</td> <td>{RANINTRO}</td> </tr> <!-- END DYNAMIC BLOCK: listran --> </table> <!-- END: ran_list.tpl --> |
Als ik dit uitvoer krijg ik dit te zien:
ERROR: get_template() failure: [./templates/Eenwebsite.com/]
Deze fout wordt veroorzaakt door de regel: $tpl->parse(LISTRANS,".listran");
Dit kan ook wel kloppen, want ik snap niet(en staat niet goed in help/voorbeelden waarom etc) die LISTRANS er moet staan, deze stond standaard op ROWS, maar vedder werdt er zowel in het voorbeeld php filetje als in de 2 gebruikte tpl files de text ROWS nergens gebruikt. Dus ik snap niet wat ik met die waarde moet doen.
Ook de standaard functie wekrt niet die vanuit fasttemplate is. dus de example_dynamic.php.
Dan zie ik de text ROWS staan. Ik draai die example_dynamic wel MET de veranderde code omdat het anders gewoonweg NIET werkt.
General server information
Operating system: Linux
Apache version: [GUM]
PHP version 4.3.1
Waarom werkt FastTemplate niet met php 4.3.1? En waarom werkt mijn dynamic niet goed?
En als FastTemplate niet te gebruiken is met PHP 4.3.1 waar kan ik dan een andere zeer goeie TPl engine vinden? De functionaliteid van FastTemplate is goed, deze opbouw moet ik hebben, dus templates met max 1 file per pagina heb ik gewoon niets aan.