[templatepower]prepare()

Pagina: 1
Acties:

  • aburrir
  • Registratie: Januari 2005
  • Laatst online: 13-05 21:49
Hoi,

Ik ben sinds kort bezig met templatepower, en nu stuit ik op een probleem. Ik heb gehoort+gelezen dat je $tpl->prepare() moet doen na de AssignInclude();. Daaronder komen de blocks.

Nu heb ik in index.php een header, content en footer. De content hangt af van de waarde die door pagina= in de url wordt meegegeven. Alleen in dat stukje script gebruik ik AssignInclude en blocks. ik heb nu geen flauw idee waar ik moet preparen.

Mijn index.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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
<?php
/* Benodige dingen starten */
ob_start();
session_start();
ini_set("register_globals", "Off");

/* INDEX definiëren */
define('INDEX', true);

/* Bestanden includen */
include('inc/class.templatepower.php');
include('inc/mysql.php');
include('inc/functies.php');
include('inc/sessie.php');

/* Kijken of iemand gebanned is */
if(mysql_result(mysql_query("SELECT COUNT (id) FROM ".$mysql['prfx']."_ban WHERE id = ".$_SERVER['REMOTE_ADDR']),0) > 0)
{
  header("Location: banned.php");
}

/* TemplatePower starten */
$tpl  = new TemplatePower('theme/'.config('theme').'/index.tpl');

/* templates includen */
$tpl->AssignInclude('header', 'theme/'.config('theme').'/header.tpl');
$tpl->AssignInclude('footer', 'theme'.config('theme').'/footer.tpl');

$tpl->prepare();

/* header.php includen */
include('paginas/header.php');


/* Pagina includen die gevraagd wordt dmv ?pagina= */
if(isset($_GET['pagina']))
{
  if(file_exists('theme/'.config('theme').'/'.$_GET['pagina'].'.tpl'))
  {
    if(file_exists('paginas/'.$_GET['pagina'].'.php'))
    {
      $tpl->AssignInclude('pagina', 'theme/'.config('theme').'/'.$_GET['pagina'].'.tpl')
      include('paginas/'.$_GET['pagina'].'.php');
    }
    else
    {
      $tpl->NewBlock('pagina_error');
      $tpl->Assign('foutmelding', 'De pagina kan niet worden gevonden');
      $tpl->GotoBlock('_ROOT');
    }
  }
  else
  {
    $tpl->NewBlock('template_error');
    $tpl->Assign('foutmelding', 'Het templatebestand kan niet worden geladen');
    $tpl->GotoBlock('_ROOT');
  }
}
else
{
  $tpl->AssignInclude('pagina', 'theme/'.config('theme').'/begin.tpl');
  include('paginas/begin.php');
}

/* footer.php includen */
include('paginas/footer.php');

?>


Ik heb lopen zoeken, maar kom er niet uit. Alvast bedankt,
Dennis

[ Voor 17% gewijzigd door aburrir op 01-02-2005 21:25 ]


  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 15-05 08:48

Janoz

Moderator Devschuur®

!litemod

Zou je misschien ook aan kunnen geven wat er fout gaat? En ook hoe dit verschilt met wat je verwachting is?

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


  • aburrir
  • Registratie: Januari 2005
  • Laatst online: 13-05 21:49
Ik heb het nog niet uitgeprobeerd, maar er staat dat het niet hoort, en ik maak graag alles valid. Ik heb nu dus geen flauw idee waar je het moet plaatsen, omdat op deze manier alle Includes en Blocks door elkaar staan.

  • Scott
  • Registratie: December 2004
  • Laatst online: 07:02

Scott

Ik ben, dus ik tweak

edit: Hier stond iets heel doms en ik had niet goed gelezen, sorry :X 8)7

En het moet dan dan dus na de assignInclude, hij staat nu goed.. 'k Zou toch maar ff kijken of het op deze manier goed gaat, want dit zou toch wel de juiste manier moeten zijn.

[ Voor 136% gewijzigd door Scott op 01-02-2005 21:50 ]


  • aburrir
  • Registratie: Januari 2005
  • Laatst online: 13-05 21:49
Er staat toch echt na fncties als AssignInclude, of ben ik nu gek? :?

Maar waar moet het dan in dit script komen te staan?

  • flashin
  • Registratie: Augustus 2002
  • Laatst online: 17-12-2023
Je moet jezelf eerst even afvragen of je voor jouw doeleinden wel een template parser nodig hebt.. Waarschijnlijk gebruik je de functionaliteiten van de parser toch niet echt omdat je met een pagina include ding werkt.
Als je je dat hebt afgevraagd zou je ook nog eens kunnen kijken wat er anders zou moeten aan je opzet, want volgens de manual mag het zo niet en werkt het ook niet.

  • Skaah
  • Registratie: Juni 2001
  • Niet online
Heeft Template-power zelf geen documentatie? Anders zou je kunnen kiezen voor een andere template engine, bijvoorbeeld Smarty, die wel goed gedocumenteerd is.
Pagina: 1