Smarty findet Templates nicht



  • Ich wollte mir mal das Smarty-Template anschauen, aber irgendwie funktioniert das ganze nicht. Ich kann zwar Instanzen von der Smarty-Klasse (fehlerfrei) erzeugen. Auch Variablen Werte zuweisen. Aber wenn ich ein Template anzeigen möchte kommt die Fehlermeldung:

    Warning: Smarty error: unable to read resource: "index.tpl" in c:\smarty\Smarty.class.php on line 1144
    

    dabei habe ich die template, tempate_c und config verzeichnisse erstellt.
    Und natürlich befindet sich die Datei index.tpl im template-Verzeichnis.

    Die Dateien auf dem Server sind:
    index.php:

    <?php
       error_reporting(E_ALL);
       define('SMARTY_DIR', 'c:\\smarty\\');
       require(SMARTY_DIR . 'Smarty.class.php');
    
       $smarty = new Smarty;
       // Hilft nicht weiter
       // $smarty->template_dir = 'c:\\web\\templates\\';
       // $smarty->compile_dir  = 'c:\\web\\templates_c\\';
       // $smarty->config_dir   = 'c:\\web\\config\\';
    
       $smarty->assign('str', 'Hello World');
       $smarty->display('index.tpl');
    ?>
    

    index.tpl:

    <html>
       <body>
          <p>Smarty-Test: {$str} </p>
       </body>
    </html>
    

    Danke im Voraus.


  • Mod

    template_dir usw. musst du schon setzen, weiters braucht smarty zugriff darauf - dh uU musst du die rechte setzen (ich kenne mich unter windows da aber nicht aus)

    mir hilft dann oft ein backtrace() um die genauen parameter zu finden mit denen die funktionen aufgerufen wurde - da sieht man dann oft, dass er in wirklichkeit in einem ganz anderen verzeichnis sucht,...



  • Ich hab jetzt hingekriegt, musste paar Stunden rumfummeln bis ich herausfand, dass ich templates falsch geschrieben habe. Aber jetzt gehts.

    Shade Of Mine schrieb:

    template_dir usw. musst du schon setzen, weiters braucht smarty zugriff darauf - dh uU musst du die rechte setzen (ich kenne mich unter windows da aber nicht aus)

    Ist ein Win98 Rechner, der hat keine Benutzerrechte.


Anmelden zum Antworten