Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > smarty: unable to read resource


Автор: binarnik 19.4.2010, 17:51
Здравствуйте,  помогите разобраться с ошибкой:

код:

Код

      define('SMARTY_DIR', 'C:\WebServers\home\dvig\www\libs\\');

      require_once(SMARTY_DIR . 'Smarty.class.php');
        
          $smarty = new Smarty();
          $smarty->template_dir = '../libs/templates/'; 
          $smarty->complie_dir = '../libs/templates_c/'; 
          $smarty->config_dir = '../libs/configs/'; 
          $smarty->cache_dir = '../libs/cache/';
          $smarty->assign('{content}', 'контент');

          $smarty->display($smarty->template_dir.'main.tpl');



Warning: Smarty error: unable to read resource: "../libs/templates/main.tpl" in C:\WebServers\home\dvig\www\libs\Smarty.class.php on line 1093

использовал denwer...
main.tpl положил и в libs/templates_c/ и в libs/templates/ просто на всякий случай)

Заранее спасибо

Автор: skyboy 19.4.2010, 18:19
Цитата(binarnik @  19.4.2010,  16:51 Найти цитируемый пост)
$smarty->template_dir.'main.tpl'

сделай 
Код

echo realpath($smarty->template_dir.'main.tpl');

посмотри.

Автор: binarnik 19.4.2010, 19:01
немножко изменил, добавил полные пути

Код

      define('SMARTY_DIR', 'C:\WebServers\home\dvig\www\libs\\');

      require_once(SMARTY_DIR . 'Smarty.class.php');          

          $smarty = new Smarty();
          $smarty->template_dir = 'C:\WebServers\home\dvig\www\libs\templates\\'; 
          $smarty->complie_dir = 'C:\WebServers\home\dvig\www\libs\templates_c\\'; 
          $smarty->config_dir = 'C:\WebServers\home\dvig\www\libs\configs\\'; 
          $smarty->cache_dir = 'C:\WebServers\home\dvig\www\libs\cache\\';
          
          $smarty->assign('{content}', 'контент');
                   
          echo realpath($smarty->complie_dir);
            
          $smarty->display($smarty->template_dir.'main.tpl');


теперь другая ошибка: 

C:\WebServers\home\dvig\www\libs\templates_c        /////  echo realpath($smarty->complie_dir);

Fatal error: Smarty error: the $compile_dir 'templates_c' does not exist, or is not a directory. in C:\WebServers\home\dvig\www\libs\Smarty.class.php on line 1093

Хотя папка там существует и в ней даже main.tpl лежит

Автор: SickFxck 19.4.2010, 19:27
binarnik, в template_c сохраняются "скомпилированные" шаблоны, т.е. чистый PHP-код, а не tpl-файлы.

Цитата(binarnik @  19.4.2010,  19:01 Найти цитируемый пост)
Хотя папка там существует

Ты считаешь, что Smarty или PHP тебе врёт?

Автор: binarnik 19.4.2010, 20:01
Цитата(SickFxck @ 19.4.2010,  19:27)
binarnik, в template_c сохраняются "скомпилированные" шаблоны, т.е. чистый PHP-код, а не tpl-файлы.

Цитата(binarnik @  19.4.2010,  19:01 Найти цитируемый пост)
Хотя папка там существует

Ты считаешь, что Smarty или PHP тебе врёт?

код

Код

      require_once(SMARTY_DIR . 'Smarty.class.php');
        
          $smarty = new Smarty();
          $smarty->template_dir = 'C:\WebServers\home\dvig\www\libs\templates\\'; 
          $smarty->complie_dir = 'C:\WebServers\home\dvig\www\libs\templates_c\\'; 
          $smarty->config_dir = 'C:\WebServers\home\dvig\www\libs\configs\\'; 
          $smarty->cache_dir = 'C:\WebServers\home\dvig\www\libs\cache\\';
          
          if(file_exists($smarty->complie_dir) && is_dir($smarty->complie_dir)) 
            echo "good<br>";
          
          $smarty->assign('{content}', 'контент');
                   
          echo realpath($smarty->complie_dir);
            
          $smarty->display($smarty->template_dir.'main.tpl');


вывод

Код

good
C:\WebServers\home\dvig\www\libs\templates_c
Fatal error: Smarty error: the $compile_dir 'templates_c' does not exist, or is not a directory. in C:\WebServers\home\dvig\www\libs\Smarty.class.php on line 1093

Автор: SickFxck 19.4.2010, 21:12
Цитата(binarnik @  19.4.2010,  20:01 Найти цитируемый пост)
$smarty->complie_dir


Автор: binarnik 19.4.2010, 21:38
 smile  ###) спасибо

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)