Установка Smarty

ccsmУстановка Smarty

Для установки smarty нам потребуется веб сервер с РНР4 или более современной версией(скорее всего это будет РНР5).

Заходим на www.smarty.net и оттуда скачиваем последний релиз. В архиве мы види каталоги demo и libs и кучу файлов с полезной информацией:)

Распаковываем папку libs в любое удобное место(можно в корень)

Создаем на веб-сервере(в корне) каталоги: cache, templates, templates_c и conf.

И каталогам cache и templates_c присваиваем права доступа 777(chmod 777 cache итд...)

Теперь в каталоге conf создаем конфиг(config.php) для Smarty который подключаем в начале нашего index.php


config.php

// Сначала объявляем константу SMARTY_DIR - путь к классу SMARTY  define('SMARTY_DIR','libs/'); require_once(''.SMARTY_DIR.'/Smarty.class.php'); $smarty = new Smarty; $smarty->template_dir = './templates/'; $smarty->compile_dir = './templates_c/'; $smarty->cache_dir = './cache/'; $smarty->caching=true; 

В корне создаем index.php со следующим кодом:

// Включаем наш конфиг require_once('conf/config.php'); $smarty->assign('VREMYA','12:00 сейчас полдень'); //Присваиваем переменной VREMYA значение $smarty->display('first.tpl.htm'); 

А в папке templates создаем тестовый темплейт first.tpl.htm следующего содержания:

Время

( ! ) Notice: Undefined index: VREMYA in /var/www/user20658/data/www/allpro.com.ua/wa-cache/apps/site/templates/compiled/site_ru_RU/60/8a/d9/608ad9045d390eed45a1898a884b4ffee646c330.string.php on line 56
Call Stack
#TimeMemoryFunctionLocation
10.0003400904{main}( ).../index.php:0
20.00801100048waSystem->dispatch( ).../index.php:7
30.00801100088waSystem->dispatchFrontend( ).../waSystem.class.php:615
40.04344384280waFrontController->dispatch( ).../waSystem.class.php:941
50.04354384392waFrontController->execute( ).../waFrontController.class.php:84
60.04464457832waFrontController->runController( ).../waFrontController.class.php:190
70.04464457832siteFrontendController->run( ).../waFrontController.class.php:263
80.04464457832siteFrontendController->run( ).../waViewController.class.php:46
90.04464457832siteFrontendController->execute( ).../waController.class.php:21
100.05785671312siteFrontendController->executeAction( ).../siteFrontend.controller.php:12
110.05785671312siteFrontendAction->display( ).../waViewController.class.php:86
120.05785671312siteFrontendAction->display( ).../siteFrontend.action.php:78
130.05785671312siteFrontendAction->display( ).../waPage.action.php:108
140.05785671312siteFrontendAction->execute( ).../waViewAction.class.php:161
150.06586444088siteFrontendAction->renderPage( ).../siteFrontend.action.php:18
160.06586447160waSmarty3View->fetch( ).../waPage.action.php:90
170.06646448664Smarty->fetch( ).../waSmarty3View.class.php:144
180.07056503256content_5e583ded5b8165_00733052( ).../smarty_internal_templatebase.php:186

( ! ) Notice: Trying to get property 'value' of non-object in /var/www/user20658/data/www/allpro.com.ua/wa-cache/apps/site/templates/compiled/site_ru_RU/60/8a/d9/608ad9045d390eed45a1898a884b4ffee646c330.string.php on line 56
Call Stack
#TimeMemoryFunctionLocation
10.0003400904{main}( ).../index.php:0
20.00801100048waSystem->dispatch( ).../index.php:7
30.00801100088waSystem->dispatchFrontend( ).../waSystem.class.php:615
40.04344384280waFrontController->dispatch( ).../waSystem.class.php:941
50.04354384392waFrontController->execute( ).../waFrontController.class.php:84
60.04464457832waFrontController->runController( ).../waFrontController.class.php:190
70.04464457832siteFrontendController->run( ).../waFrontController.class.php:263
80.04464457832siteFrontendController->run( ).../waViewController.class.php:46
90.04464457832siteFrontendController->execute( ).../waController.class.php:21
100.05785671312siteFrontendController->executeAction( ).../siteFrontend.controller.php:12
110.05785671312siteFrontendAction->display( ).../waViewController.class.php:86
120.05785671312siteFrontendAction->display( ).../siteFrontend.action.php:78
130.05785671312siteFrontendAction->display( ).../waPage.action.php:108
140.05785671312siteFrontendAction->execute( ).../waViewAction.class.php:161
150.06586444088siteFrontendAction->renderPage( ).../siteFrontend.action.php:18
160.06586447160waSmarty3View->fetch( ).../waPage.action.php:90
170.06646448664Smarty->fetch( ).../waSmarty3View.class.php:144
180.07056503256content_5e583ded5b8165_00733052( ).../smarty_internal_templatebase.php:186

Вот вобщемто и все осталось только проверить:

http://site_name/index.php

в браузере мы должны увидеть:

Время 12:00 сейчас полдень