Avatar billede lakana Nybegynder
01. april 2006 - 12:04 Der er 15 kommentarer

Smarty.php.net

Jeg har downlodet smarty på www.smarty.php.net

Nu har jeg så smidt filen: "Smarty.class.php" ind i en helt anden mappe og omdøbt både filen og klassenavnet - og så har jeg lavet en mappe der hedder "template" hvor jeg har

filen, "Smarty_Compiler.class.php"
mappen, "templates_c"
mappen og filer, "templates"
mappen og filer, "internals"
mappen og filer, "plugins"

Og så har jeg min side i roden som jeg kører templatesystemet igennem. Men det virker ikke nu.

Den skriver:

unable to read resource: "default.tpl"
unable to read resource: "debug.tpl"

Nogle der har en idé til hvordan det kan rettes?
Avatar billede lakana Nybegynder
01. april 2006 - 12:07 #1
http://phpfi.com/110383

I linje 72 fortæller den fejlmeddelelsen
Avatar billede erikjacobsen Ekspert
01. april 2006 - 12:29 #2
Har du en default.tpl ? Har du sat Smarty til at se i det rigtige katalog ?
Avatar billede lakana Nybegynder
01. april 2006 - 12:35 #3
if( !defined( "TEMPLATE_DIR" ) )
{
    define( "TEMPLATE_DIR", $_SERVER['DOCUMENT_ROOT'] . "/template/" . DIRECTORY_SEPARATOR );
}

if( !defined( "TEMPLATE_CORE_DIR" ) )
{
    define( "TEMPLATE_CORE_DIR", TEMPLATE_DIR . "internals" . DIRECTORY_SEPARATOR );
}
Avatar billede erikjacobsen Ekspert
01. april 2006 - 12:44 #4
Har du sat Smarty til at se i det rigtige katalog ?   

Du kan ikke bruge !defined( "TEMPLATE_DIR" ) på konstanter lavet med define - du spørger om en tekststreng er defineret. Fjern de if-er

Document_root er ikke altid sat korrekt. Så hvad indeholder TEMPLATE_DIR og er det så det rigtige katalog?

Og bruger du så konstanterne til Smarty? 

Det ser ud som du selv gætter på hvordan tingene skal være i stedet for bare at bruge ekspemplerne fra smarty.php.net
Avatar billede lakana Nybegynder
01. april 2006 - 12:46 #5
TEMPLATE_DIR indeholder c:/apache/htdocs/template/ hvilket også er korrekt - SELVOM jeg har brugt if-sætningerne
Avatar billede erikjacobsen Ekspert
01. april 2006 - 12:52 #6
If-sætninger giver ingen mening, selvom du da er "heldig" at    !defined( "TEMPLATE_DIR" )  altid giver true.
Avatar billede lakana Nybegynder
01. april 2006 - 12:58 #7
Okay :)

Dem har jeg fjernet nu, så :)

Problemet ligger jo i, at både $_return og !$params['quiet'] ikke eksisterer

Men ved ikke hvordan jeg kan rette op på det
Avatar billede erikjacobsen Ekspert
01. april 2006 - 13:01 #8
Og bruger du så konstanterne til Smarty?
Avatar billede lakana Nybegynder
01. april 2006 - 13:07 #9
Jeg har dummet mig :D

Jeg lagde jo, som sagt, alle mapperne i min template-mappe, men i Smarty's demo ligger "templates" og "templates_c" jo i samme mappe som index.

Nu vil jeg så ændre mit spørgsmål til hvordan jeg kan angive at den kun skal smide compiled_template's i /template/templates_c/ istedet for i /templates_c/, og det samme med min template-filer-mappe - den skal angives til at være i /template/templates/ istedet for /templates/.

Jeg kan jo ikke skrive: "var $compile_dir = TEMPLATE_DIR . "templates_c";" så hvordan skal jeg så gøre ddet? :S
Avatar billede erikjacobsen Ekspert
01. april 2006 - 13:14 #10
bruge documentroot to gange
Avatar billede erikjacobsen Ekspert
01. april 2006 - 13:14 #11
Jeg bruger det her et sted:

  $smarty =& new Smarty();

  $smarty->template_dir = "$HOME/template/";
  $smarty->compile_dir = "$HOME/template_c/";
  $smarty->config_dir = "$HOME/config/";
Avatar billede lakana Nybegynder
01. april 2006 - 13:22 #12
Hvad betyder & tegnet?

Og mener du så jeg skal skrive de 3 linjer i hver eneste fil?
Avatar billede erikjacobsen Ekspert
01. april 2006 - 13:41 #13
Avatar billede lakana Nybegynder
09. august 2011 - 12:18 #14
skriv svar erikjacobsen
Avatar billede erikjacobsen Ekspert
09. august 2011 - 12:21 #15
Jeg samler slet ikke på point, tak. Svar selv, og accepter dit eget svar.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester