webForumDet fria alternativet

Fasttemplate get_template failure

PHP

6 svar · 273 visningar · startad av nanne

Medlem sedan dec. 19991 749 inlägg
Frågan#1

Försöker göra ett dynamiskt block men får upp detta felet. Vad kan det bero på tro?

ERROR: get_template() failure: [templates/]

index.php

<?
if($pg=="") {
   if($QUERY_STRING!="") {
      $pg=strtok($QUERY_STRING, "&");
      if(strchr($pg,"="))
         $pg="front";
   } else
       $pg="front";
}

$incfiles = "incfiles";

#Database connections
mysql_pconnect($dbhost,$dbuser,$dbpass);
mysql_select_db("nanne_net");

//Skapar en instans av klassen
/*Argumentet till konstruktorn är var någonstans som du förvarar dina templatesfiler */
require("klasser/class.fasttemplate.php");
$tpl = new FastTemplate("templates/");

require("$incfiles/common.inc.php");
if(file_exists("$incfiles/$pg.inc.php"))
   require("$incfiles/$pg.inc.php");

//Sedan definierar vi filerna
$tpl->define(array(main => "main.tpl", meny => "meny.tpl", showrecord => "showrecord.tpl", page => "$pg.tpl"));

//Tilldelar TITLE och MAIN dess värden
$tpl->assign(TITLE, "[nanne.net] version 5.0 Tidningsversionen");

//Kör allt genom metoden parse()
$tpl->parse(MENY,".meny");

$tpl->parse(PAGE, ".page");
$tpl->parse(MAIN, array("main"));

//Skriver ut allt med Fastprint()
Header("Content-type: text/plain");
$tpl->Fastprint();
$tpl->Clear_all();
exit;
?>

records.inc.php

<?
  $chararr = Array("a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","å","ä","ö");

  $tpl->define_dynamic("rader","page");

  for($i=0;$i<=count($chararr); $i++) {
      $tpl->assign(array(R_CHAR_LOW      => $chararr[$i],
                         R_CHAR_HIGH     => strtoupper($chararr[$i])));

      $tpl->parse(ALFABET, ".rader");
  }
?>
Medlem sedan jan. 20007 697 inlägg
#2

Det låter nästan som att det skulle kunna vara lite rättigheter på templaten som spökar.
Men kommer felet bara upp när du ska lägga in ett dynamiskt block eller finns det alltid där vid just den templaten?

Medlem sedan dec. 19991 749 inlägg
#3

Bara dynamiska block

det är just denna rad som spökar

$tpl->parse(ALFABET, ".rader");

vet inte vad som är fel för jag har provat alla möjliga saker.

Allt väl på Eldata föresten?

Medlem sedan jan. 20007 697 inlägg
#4

Gör du någon parse på page i records.inc.php?
Jag kan inte se något annat fel egentligen.

Och ja, det är lugnt här på Eldata, förutom att jag har blivit så förkyld. :)

Medlem sedan dec. 19991 749 inlägg
#5

records.inc.php inkluderas i index.php och där parsas ju PAGE så det vore väl inte bli några problem.

Hmm.. detta är knivigt...

Medlem sedan jan. 20007 697 inlägg
#6

Vad händer om du gör så här istället, d.v.s. att du kör define på page och allt det där innan du inkluderar filerna. Testa det, tror du inte att det kan vara en liten buse i detta fall? :q :)

index.php

<?
if($pg=="") {
   if($QUERY_STRING!="") {
      $pg=strtok($QUERY_STRING, "&");
      if(strchr($pg,"="))
         $pg="front";
   } else
       $pg="front";
}

$incfiles = "incfiles";

#Database connections
mysql_pconnect($dbhost,$dbuser,$dbpass);
mysql_select_db("nanne_net");

//Skapar en instans av klassen
/*Argumentet till konstruktorn är var någonstans som du förvarar dina templatesfiler */
require("klasser/class.fasttemplate.php");
$tpl = new FastTemplate("templates/");

//Sedan definierar vi filerna
$tpl->define(array(main => "main.tpl", meny => "meny.tpl", showrecord => "showrecord.tpl", page => "$pg.tpl"));

require("$incfiles/common.inc.php");
if(file_exists("$incfiles/$pg.inc.php"))
   require("$incfiles/$pg.inc.php");

//Tilldelar TITLE och MAIN dess värden
$tpl->assign(TITLE, "[nanne.net] version 5.0 Tidningsversionen");

//Kör allt genom metoden parse()
$tpl->parse(MENY,".meny");

$tpl->parse(PAGE, ".page");
$tpl->parse(MAIN, array("main"));

//Skriver ut allt med Fastprint()
Header("Content-type: text/plain");
$tpl->Fastprint();
$tpl->Clear_all();
exit;
?>

records.inc.php

<?
  $chararr = Array("a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","å","ä","ö");

  $tpl->define_dynamic("rader","page");

  for($i=0;$i<=count($chararr); $i++) {
      $tpl->assign(array(R_CHAR_LOW      => $chararr[$i],
                         R_CHAR_HIGH     => strtoupper($chararr[$i])));

      $tpl->parse(ALFABET, ".rader");
  }
?>
Medlem sedan dec. 19991 749 inlägg
#7

DOH!

Det var det som var felet... Tack så mkt Kim... :-)

254 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
121 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
122 ms — ändringar (db)