Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Smarty: Czy SMARTY_DIR musi zaczynac sie od "/"?
Forum PHP.pl > Forum > PHP
molo
Wlasnie postanowilem zapoznac sie z jakims systemem szablonow (projekty stawaly sie zbyt zagmatwane). Ze wzgledu na swe mozliwosci wybralem oczywiscie Smarty. Jest jednak jeden problem, a mianowicie wszelikie serwisy jakie robie, umieszczane sa na serwerach roznych providerow, tak wiec jedyne co moge zrobic to trzymac Smarty w katalogu ze strona. Nie wiem takze, jaki jest adres bezwzgledny katalogu ze Smarty'ami. Czy w takim razie, jesli uzyje sobie takiej skladni:

define("SMARTY_DIR","smarty/");
require_once(SMARTY_DIR."Smarty.class.php");
.......

to zaczna pojawiac sie bledy?

Pozdrawiam!!!
spenalzo
Jeżeli wszystko jest dobrze (pliki w odpowiednim katalogu), to nie zaczną się pojawiać.
molo
Cytat
Jeżeli wszystko jest dobrze (pliki w odpowiednim katalogu), to nie zaczną się pojawiać.


Skopiowalem cala zawartosc katalogu 'libs' do katalogu 'smarty' ( czyli wszystko znajdujes sie jakby na www.jakis_serwer.pl/smarty ). Nie wiem czy tak jest dobrze, czy nie.... :-/
spenalzo
Pamiętaj o ustawieniu odpowiednich praw dostępu. W instrukcji zalecają 700.
Omega
Nie zapominaj o ustawieniu:
[php:1:7be6875e05]<?php
$this->template_dir
$this->compile_dir
$this->config_dir
$this->cache_dir
?>[/php:1:7be6875e05]
FiDO
Ja to robie troche inaczej, IMHO prosciej i uniwersalniej. Zalozmy, ze mamy smarty w podkatalogu Smarty wzgledem katalogu glownego projektu. Tworzysz wiec plik setup.php (nazwa nieistotna oczywiscie..)
a w nim:

[php:1:e2b28edc87]<?php

require 'Smarty/Smarty.class.php';

class mySmarty extends Smarty {
function mySmarty()
{
$HOME = getcwd();
$this->Smarty();

$this->template_dir = $HOME.'/templates/';
$this->compile_dir = $HOME.'/templates_c/';
}
}
?> [/php:1:e2b28edc87]

Przykladowe uzycie tego:
[php:1:e2b28edc87]
require 'setup.php';

$smarty = new mySmarty;

...
...
$smarty->assign('costam',$zmienna);
$smarty->display('index.tpl');
[/php:1:e2b28edc87]
Nie trzeba sie babrac z katalogami.
kurtz
Hej
Cytat
Nie zapominaj o ustawieniu:
[php:1:8202c5c80d]<?php
$this->template_dir
$this->compile_dir
$this->config_dir
$this->cache_dir
?>[/php:1:8202c5c80d]
Oj nieprawda. aby wystartowac wystarczy ustawic copile_dir z tego co pamietam. reszta jest juz domyslnie przyjmowana..

Pozdrawiam
kurtz
Hej
Cytat
Ja to robie troche inaczej, IMHO prosciej i uniwersalniej.
Popieram i sam stosuje ;)
Cytat
Nie trzeba sie babrac z katalogami.
Doookladnie ;)

Pozdrawiam
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.