Include и Require не работают в сеансе...

Include и Require не работают в сеансе...

Include и require не выводят подключаемый файл, если до них идет код, открывающий сеанс. Это правильно? И что в таком случае использовать?

Пример:
PHP:
<? //Проверка, вошел ли в систему пользователь.
session_start();
if (session_is_registered("valid_user"))
{
	echo 'В системе работает '.$valid_user;
?>

<? require "int_top.htm"; ?>

<?
}
?>
При этом выводится строка "В системе работает... ...", но не выводится файл int_top.htm.
Может, все дело в фигурных скобках оператора if ???
 

RomikChef

Guest
проверь еще раз свой код.
Никакой связи естественно, нет.

непонятно только, зачем тебе столько тегов РНР, но они тут не при чем - просто лишние.
 

buddy2002

Guest
попробуй
require("int_top.htm"); и убери, действительно эти теги.. зачем так много?
 

jer

...
возможно у тебя файл int_top.htm кривой, попробуй включить показ всех ошибок/варнингов и увидишь в чем проблема...
 
Много тегов PHP для того, что в теле if у меня много тегов html, которые я для краткости опустил. Сейчас проверю, как ты советуешь.
Ну а может, есть более эффективная проверка, вошел ли пользователь в систему? Дело в том что я перехожу с файлов html, которых у меня около 500, на .php. И сразу перевести все на php я не в силах. Хотелось бы постепенно, оставив тело страницы в html, но с проверкой сеанса в php.
 

Demiurg

Guest
поставь проверку пользователя в оидельный файл, который в случае неудачи будет делать exit. Потом просто подключай его везде.
 

RomikChef

Guest
Эдуард.
или приводи здесь РОВНО ТОТ код, который у тебя не работает, или не трать наше и свое время.
 
Именно этот код и не работает. Я просто объяснил, почему столько тегов
PHP:
.
 
Я все понял. Дело в пустяке. Require тут не при чем.
Просто сеанс прекращает работать после открытия нового тега <?. И надо либо все вписать в одну пару <? ... ?>, либо каждый раз, при открытии новой пары <? ... ?> выполнять проверку пользователя.
Ну ооооооочень неудобно...
 

Demiurg

Guest
>Просто сеанс прекращает работать после открытия нового тега <?.
ты ошибаешься.

зы не сеанс а сессия
 

Demiurg

Guest
с чего ты взял, что сессия прекращается ?
 
Прошу прощения, что ввел в заблуждение достопочтенную публику. Прав был jer. Надо было проверить сначала включаемый файл, который был на самом деле кривым. Но он работал в других файлах. Поэтому проверил я его только сейчас.
А так все работает. И сессия не прекращается.
Еще раз пардон...
И спасибо
 
Сверху