Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Ошибка при попытке записи в файл - Smarty error

Сообщения:  [1-10]   [11-15] 

 
 автор: GeorgeIV   (16.09.2009 в 21:55)   письмо автору
 
   для: Саня   (16.09.2009 в 19:59)
 

ну да, тут я по инерции собрал все константы из сообщения.

  Ответить  
 
 автор: Саня   (16.09.2009 в 19:59)   письмо автору
 
   для: GeorgeIV   (16.09.2009 в 18:27)
 

DIRECTORY_SEPARATOR всегда определена. Это стандартная константа.

  Ответить  
 
 автор: shah   (16.09.2009 в 19:03)   письмо автору
 
   для: shah   (16.09.2009 в 18:47)
 

упс, ошибочка вышла DIRECTORY_SEPARATOR тоже определена - это "/"

  Ответить  
 
 автор: shah   (16.09.2009 в 19:03)   письмо автору
 
   для: shah   (16.09.2009 в 18:47)
 

упс, ошибочка вышла DIRECTORY_SEPARATOR тоже определена - это "/"

  Ответить  
 
 автор: shah   (16.09.2009 в 18:47)   письмо автору
 
   для: GeorgeIV   (16.09.2009 в 18:27)
 

SMARTY_CORE_DIR определено (/storage/home/srv18973/_core_amg/classes/smarty/internals/),
а вот DIRECTORY_SEPARATOR - нет!
Только не могу найти где они задаются.

  Ответить  
 
 автор: GeorgeIV   (16.09.2009 в 18:27)   письмо автору
 
   для: shah   (16.09.2009 в 18:10)
 

Константы определены - SMARTY_CORE_DIR, DIRECTORY_SEPARATOR ?

  Ответить  
 
 автор: shah   (16.09.2009 в 18:10)   письмо автору
 
   для: GeorgeIV   (16.09.2009 в 15:33)
 

Ничего не получается.
Сайт написан под CMS, эта CMSка уже работает на многих сайтах и на локалке у меня сайт на ней тоже работает, вот функция которая выдает ошибку:


<?

function smarty_core_write_file($params, &$smarty)
{
    
    
//Здесь переменная
    //$params['filename'] = //storage/home/srv18973/htdocs/_frontend/compiled//%%33/330/330C93A8%%index.tpl.php/
            //т.е существует
    
$_dirname dirname($params['filename']); 
    
//$_dirname = /storage/home/srv18973/htdocs/_frontend/compiled//%%33/330
             //тоже существует
    
if ($params['create_dirs']) {
        
$_params = array('dir' => $_dirname);
        require_once(
SMARTY_CORE_DIR 'core.create_dir_structure.php');
        
smarty_core_create_dir_structure($_params$smarty);
    }
    
    
$_tmp_file tempnam($_dirname'wrt');
    
//!!!!!Здесь переменной $_tmp_file уже не существует
    
if (!($fd = @fopen($_tmp_file'wb'))) {
        
$_tmp_file $_dirname DIRECTORY_SEPARATOR uniqid('wrt');
        if (!(
$fd = @fopen($_tmp_file'wb'))) {
            
$smarty->trigger_error("problem writing temporary file '$_tmp_file'");
            return 
false;
        }
    }

    
fwrite($fd$params['contents']);
    
fclose($fd);

    if (
DIRECTORY_SEPARATOR == '\\' || !@rename($_tmp_file$params['filename'])) {
        
// On platforms and filesystems that cannot overwrite with rename() 
        // delete the file before renaming it -- because windows always suffers
        // this, it is short-circuited to avoid the initial rename() attempt
        
@unlink($params['filename']);
        @
rename($_tmp_file$params['filename']);
    }
    @
chmod($params['filename'], $smarty->_file_perms);

    return 
true;
}


Если я не ошибаюсь smarty не может создать времменную директорию /%%33/330/и
файл 330C93A8%%index.tpl.php'.
В чем может быть проблема?
Для всех файлов smarty выставил права 0777.
Служба поддержки молчит.
Буду искать дальше...

  Ответить  
 
 автор: GeorgeIV   (16.09.2009 в 15:33)   письмо автору
 
   для: shah   (15.09.2009 в 17:13)
 

Эти вещи сам Смарти создает, не надо за него делать, настроить толком надо. Найдите в сети такой файл Smarty-2.6.11-docs.pdf и почитайте, там все подробно написано и про установку и про настройку.

[поправлено модератором]

  Ответить  
 
 автор: Лена   (16.09.2009 в 10:42)   письмо автору
 
   для: shah   (15.09.2009 в 23:57)
 

Не подцепляется только один файл шаблона или вообще все?
Честно говоря, не знаю, что у вас там, но я бы делала следующее.
Определила бы проблемный участок(если он один, два и т.д.) - в шаблонах в начале и в конце надо ставить метки, что-то вроде <!-- mytempl.tpl start --> и <!-- mytempl.tpl end --> тогда сразу видно, какой шаблон не срабатывает.
Дальше. Посмотреть, какие переменные в этот шаблон идут - может, вы там что-то грабите, а хостер этого делать не разрешает...
Можно попытаться спросить у хостера, в чем дело. Мол, права стоят и все равно не работает.
Еще можно найти людей с похожими проблемами - здесь
Еще вот это нашла - тоже почитайте http://www.phpinsider.com/smarty-forum/viewtopic.php?t=4500. Там есть ссылка на тестовый класс. Можно сходить на форум смарти - ссылка та же, пару слов по-английский думаю, составите, чтобы описать проблему.
Если ничего не получится, прицепите здесь шаблон, который не срабатывает.
У меня, например, после установки прав все работало.

  Ответить  
 
 автор: shah   (15.09.2009 в 23:57)   письмо автору
 
   для: DEM   (15.09.2009 в 23:32)
 

пробовал - ничего(((

  Ответить  

Сообщения:  [1-10]   [11-15] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования