Эта тема на forum.dklab.ru


Hannimed: Помогите с сессиями в шаблонизаторе
Здраствуйте.
Глупый наверно вопрос, но я никак не могу заставить корректно работать сессии в шаблонизаторе,
хотя тот же самый код прекрасно работает без шаблонизатора.
Я знаю что сессии нужно объявлять до первого вывода в браузер, но это правило, как мне кажеться, я соблюдаю.

Вот в кратце моя картина:
Есть фаил shablon.htm:

<?Block("Output")?>
<?=Blk("sess")?>

//дальше html документ...


Содержание <?Block("sess")?>:

<?
session_start();
session_register("count");
$count++;
echo "посещений в текущем сеансе: $count <br>";
if ($count == 1) {
$f = fopen("counts.txt", "r");
$s = fgets($f);
fclose($f);
$s = trim($s);
$i = (int) $s;
$i++;
$f = fopen("counts.txt", "w");
fputs($f, $i);
fclose($f);
}
$f = fopen("counts.txt", "r");
$s = fgets($f);
fclose($f);
$s = trim($s);
echo "всего посещений: $s";
?>


При использовании шаблонизатора, всегда выводится:
"Notice: Undefined variable: count in z:\home\localhost\subdomain\hi-net\news.htm".
Причем в браузер выводится: "посещений в текущем сеансе" всегда равно 1, а "всего посещений" увеличивается при каждом обновлении...
Без шаблонизатора такой код прекрасно работает...
Помогите пожайлуста, только не нада говорить, что так счетчики не пишут ;) я просто взял такой пример,
в моей программе счетчик не нужен :)
WingedFox:
Гм... Попробуйте использовать $_SESSION['count'] и забыть о register_globals.
Hannimed:
Все прекрасно заработало.
Спасибо большое!!!
WingedFox:
На здоровье! =)))

Эта тема на forum.dklab.ru