[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Сессии
Halgrim
Здравствуйте, я только начинаю изучать ПХП и столкнулся со следующей проблемой: У меня есть 2 страницы, скажем 1.php и 2.php.
На первой странице я записываю данные из нужных мне переменных в массив сессии:
<?
session_start();
$_SESSION['name']=$arUser["NAME"];
$_SESSION['second_name']=$arUser["LAST_NAME"];?>

На второй странице я эти данные из массива извлекаю:
<?php
session_start();
?>
Глубокоуважаемый (ая)<? echo $_SESSION["second_name"].' '. $_SESSION["name"];?>

Запускаю на работе - все нормально. Выдает "Глубокоуважаемый (ая) %Surnane% %Name%". Запускаю дома - ничего. Просто "Глубокоуважаемый (ая)", без нужных мне данных.
На работе запускал на firefox'e - работает.. Дома пытался на chrome и на firefoxe - не работает. Пришел к другу, запустил на firefox'e и IE - работает. Запустил в хроме и опере - не работает.
Т.е. я так понимаю, что в некоторых браузерах данные из массива $_SESSION до второй страницы не доходят. ( Хотя, как вы видите, что и дома, и на работе у меня стоят firefox'ы, однако на работе работает, а дома - нет.)
Поэтому у меня 2 вопроса:
1) Почему так?
2) Как сделать, что бы все везде работало?)




Спустя 32 минуты, 31 секунда (4.10.2010 - 12:45) arvitaly написал(а):
Сессии не причем, $arUser["NAME"] просто видимо ничего нет.

Спустя 1 минута, 9 секунд (4.10.2010 - 12:46) inpost написал(а):
Halgrim
Либо твоя личная ошибка, что в какой-то момент $arUser пустая, что передаёт пустые значения. Так же советую попробовать использовать полное открытие: "<?php"

Можешь проверить ещё проще сессии: $_SESSION['name'] = "СВОЙ ТЕКСТ";
И на второй странице вывести его! Или же просто на второй странице проверяй через "isset".

Спустя 11 минут, 26 секунд (4.10.2010 - 12:57) Halgrim написал(а):
Ну дело все в том, что на первой странице у меня данные $arUser выводятся, для тестирования)

echo $arUser["LAST_NAME"].' '. $arUser["NAME"].' '. $arUser["EMAIL"];

И эти данные выводятся у всех без исключения. А вот когда я уже передаю их на другую страницу, данные почему-то теряются.

Присваивать элементу массиву конкретное значение пытался - все равно ничего не показывает.

Спустя 1 минута, 35 секунд (4.10.2010 - 12:59) arvitaly написал(а):
isset скорее всего будет true, так как переменная инициализируется, но значение присваивается пустая строка.

Покажи весь кусок кода

Спустя 7 минут, 20 секунд (4.10.2010 - 13:06) Halgrim написал(а):
Первый файл:
<?php
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php");
$APPLICATION->SetTitle("Title");

$rsUsers = CUser::GetByID($USER->GetID());
$arUser = $rsUsers->Fetch();
echo $arUser["LAST_NAME"].' '. $arUser["NAME"].' '. $arUser["EMAIL"];


session_start();
$_SESSION['name']=$arUser["NAME"];
$_SESSION['second_name']=$arUser["LAST_NAME"];?>

<a href="finish.php">Сгенерировать Приглашение</a>

<?require($_SERVER["DOCUMENT_ROOT"]."/bitrix/footer.php");?>


Второй(Finish.php):
<?php
session_start();
?>
Глубокоуважаемый (ая)<? echo $_SESSION["second_name"].' '. $_SESSION["name"];?>

Спустя 29 минут, 1 секунда (4.10.2010 - 13:35) arvitaly написал(а):
Сессии стартуй до выдачи html и вообще делай вывод ошибок

Спустя 48 минут, 30 секунд (4.10.2010 - 14:24) inpost написал(а):
arvitaly
Странно, что пхп не вышел с ошибкой!
Любой скрипт должен начинаться с, и ничего другого:
<?php session_start();
ОСТАЛЬНОЕ

Спустя 11 минут, 13 секунд (4.10.2010 - 14:35) arvitaly написал(а):
Цитата
Странно, что пхп не вышел с ошибкой!


Ну наверное, отключен вывод.

Цитата
Любой скрипт должен начинаться с, и ничего другого:


Ты уже так не высказывайся) Главное чтобы заголовки передавались до тела страницы)

$a=b можно написать перед session_start();
tongue.gif

Ну это я так на всякий случай, чтобы понятней было

Спустя 30 минут, 56 секунд (4.10.2010 - 15:06) Ice написал(а):
Цитата (arvitaly @ 4.10.2010 - 15:35)
$a=b можно написать перед session_start();

inpost это знает, он просто страхует от ошибок тех, которые не могут отличить вывод от объявления
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.