Template System!
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
array
code
dank
datei
display
fehler
file
funktionieren
header
http
index
klicken
output
problem
start
system
test
url
verzeichnis
weben
-
Weil du im TPL {title} stehen hast, es aber {$title} heißen muss. Zuweisung im PHP ohne $ und im Smarty Template dann mit vorangestellten $ aufrufen.
Ansonsten empfehle ich dir die deutsche SMarty Dokumentation zu lesen: http://www.smarty.net/manual/de/ -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Nix!
Der Titel Bleibt so, Egal was ich mache!
!
Was Soll das Heißen?
Fatal error: Smarty error: [in /var/www/Web/mein cms/tpl/header.php line 8]: syntax error: unrecognized tag: position:fixed; left:0px; top:0px; right:0px; height:120px; z-index:1; background-color:#CC0000 (Smarty_Compiler.class.php, line 446) in /var/www/Web/mein cms/libs/Smarty.class.php on line 1093
Beitrag zuletzt geändert: 12.10.2009 12:58:11 von privatecitypage -
Das soll heißen das du im CSS Bereich { und } nutzt und SMarty nun denkt das es Variablen seien. Entweder das CSS/Javascript auslagern oder um mit {literal} und {/literal} umschließen.
->
{literal}
<style>
....
</style>
{/literal}
Alles was zwischen Literal steht wird von Smarty dann ignoriert. -
...
Ein wenig dein Hirn einschalten könntest du auch. Da steht doch das jenes Compile Verzeichnis nicht existiert.
Smarty erwartet 3 Verzeichnisse die nach Default Benennung "cache", "templates" und "templates_c" heißen.
Beitrag zuletzt geändert: 12.10.2009 13:14:46 von evil-devil -
Wo muss ich die den jetzt erstellen?
Beitrag zuletzt geändert: 12.10.2009 13:20:41 von privatecitypage -
Da wo du sie definiert hast im Code oder da wo du sie erstellen willst. Das ist ganz allein dir überlassen.
-
Ich hab diese Ordner Jetzt unter
/var/www/Web/mein cms/libs/ erstellt!
Doch der Fehler kommt immer noch!
Derzeit sieht der Code So aus!
<? error_reporting(E_ALL); ini_set('display_errors', 1); Define('SMARTY_TPL','/var/www/Web/mein cms/'); define('SMARTY_DIR','/var/www/Web/mein cms/libs/'); require(SMARTY_DIR.'Smarty.class.php'); $smarty = new Smarty; $smarty->assign('title', 'Startseite'); $smarty->display(SMARTY_TPL.'tpl/header.php'); $smarty->template_dir(SMARTY_DIR.'templates/'); $smarty->compile_dir(SMARTY_DIR.'templates_c/'); $smarty->cache_dir(SMARTY_DIR.'cache/'); ?>
Beitrag zuletzt geändert: 12.10.2009 13:33:22 von privatecitypage -
Ich weiß ja nicht warum du bei den Variablen Klammern herum gesetzt hast, aber das sind auf keinen Fall Funktionen. Du musst die schon wie Variablen zuweisen.
-
Gut,
Aber Jetzt sind wir da wo wir vorher waren!
der Titel wird immer noch nicht geändert aber es wird kein Fehler angezeigt!
Du meinst doch so, oder?
<? error_reporting(E_ALL); ini_set('display_errors', 1); Define('SMARTY_TPL','/var/www/Web/mein cms/'); define('SMARTY_DIR','/var/www/Web/mein cms/libs/'); require(SMARTY_DIR.'Smarty.class.php'); $smarty = new Smarty; $smarty->assign('title', 'Startseite'); $smarty->display = SMARTY_TPL.'tpl/header.php'; $smarty->template_dir = SMARTY_DIR.'templates/'; $smarty->compile_dir = SMARTY_DIR.'templates_c/'; $smarty->cache_dir = SMARTY_DIR.'cache/'; ?>
-
Ja, so ist soweit korrekt und wie sieht jetzt dein Template aus?
-
Ok...änder deinen Code mal so ab das er wie folgt ausschaut.
$smarty = new Smarty; $smarty->template_dir = SMARTY_DIR.'templates/'; $smarty->compile_dir = SMARTY_DIR.'templates_c/'; $smarty->cache_dir = SMARTY_DIR.'cache/'; $smarty->assign('title', 'Startseite'); $smarty->display('header.php');
// edit: Boar, ich könnte dich gerade am liebsten schlagen...
deinProjet/tpl <- deine TPL Dateien
deinProjekt/libs/ <-- deine Smarty verzeichnisse
Also erstmal verschiebst du jetzt alle Template Dateien aus tpl nach templates! Und dann sollte es klappen. *grml*
Und die Display Angabe änderst du von 'tpl/header.php' auf 'header.php'
Beitrag zuletzt geändert: 12.10.2009 13:59:03 von evil-devil -
Also so?
<? error_reporting(E_ALL); ini_set('display_errors', 1); Define('SMARTY_TPL','/var/www/Web/mein cms/'); define('SMARTY_DIR','/var/www/Web/mein cms/libs/'); require(SMARTY_DIR.'Smarty.class.php'); $smarty = new Smarty; $smarty->assign('title', 'Startseite'); $smarty->display = SMARTY_TPL.'header.php'; $smarty->template_dir = SMARTY_DIR.'templates/'; $smarty->compile_dir = SMARTY_DIR.'templates_c/'; $smarty->cache_dir = SMARTY_DIR.'cache/'; ?>
-
Nein, so wie ich es geschrieben habe.
Erst also wie auch jetzt das Objekt derzeugen. Dann die Umgebungsvariablen für das Objekt setzen. Dann die Template Variable(n) zuweisen und zum Schluss das Template anzeigen. In der Reihenfolge und nicht anders. -
Kann das sein das ich dein Beitrag nicht Kapiere oder wieso funktioniert das immer nocht nicht!
Kannst du mir bitte den Code Machen! -
Der Code steht doch schon oben von mir geschrieben -.-
-
Der Code Funktioniert immer noch nicht!
http://cms.privatecitypage.de/
Info:
Hier der Code!
<? error_reporting(E_ALL); ini_set('display_errors', 1); define('SMARTY_DIR','/home/webpages/lima-city/privatecitypage/html/mein cms/'); require(SMARTY_DIR.'Smarty.class.php'); $smarty = new Smarty; $smarty->template_dir = SMARTY_DIR.'templates/'; $smarty->compile_dir = SMARTY_DIR.'templates_c/'; $smarty->cache_dir = SMARTY_DIR.'cache/'; $smarty->assign('title', 'Startseite'); $smarty->display('header.php'); ?>
Beitrag zuletzt geändert: 13.10.2009 0:21:21 von privatecitypage -
Hat deine header.php rein zufällig <?php und ?> Tags? Falls ja, raus damit.
Ansonsten sehe ich bis auf einen stilistischen Fehler nichts auffälliges mehr. -
Nein!
Ich habe in der header.php keine PHP Codes!
Woran liegt es dann?
Beitrag zuletzt geändert: 13.10.2009 9:55:43 von privatecitypage -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage