Сессии в firefox

Prudkovski

Новичок
Добрый день.

Задача следующая, фронтэнд через ajax обращается к скрипту foo.php, который в зависимости от получаемых значений возвращает ответ, который далее уже учитывается во фронтэнде... нагородил конечно огород, на примере думаю будет понятней.

PHP:
if ($val == 'important') 
{
    session_start();
    $_SESSION['sessiondata'] = $forSessionData;
    return 1;
}
Все просто вроде бы, но в firefox сессия не пишется, если убрать
PHP:
return 1;
сессия устанавливается, но не работает программа в целом.

PHP:
var_dump($_SESSION)
не содержит устанавливаемых данных.
 

radioheaded

PHP нуб
Попробуйте сформулировать проблему еще раз человеческим языком. Мне пока ничего не понятно.
 

Prudkovski

Новичок
код, который в примере, не работает в браузере firefox (в хроме и опере работает), если после записи сессии убрать return, начинает работать. Как сделать, чтобы работало во всех барузерах?

зы температурит, может сознание помутнилось, и пишу не ясно, пардоньте :)
 

radioheaded

PHP нуб
Понимаете ли, мы не телепаты, нам сложно понять, что для вас значит «не работает». Даже когда вы пишете «не работает сессия», то мы вообще понятия не имеем, что вы под этим подразумеваете. Вот если вы напишете, что в одной строчке добавляете в массив новый элемент, а в следующей выводите содержимое массива, и там этого элемента нет, это уже более-менее понятная проблема. Пока что ничего не ясно.
 

Prudkovski

Новичок
так ведет себя firefox

запускаем index.php, который содержит код
PHP:
<?php
session_start();
$_SESSION['tmpvar'] = 'test';
return 1;
Запускаем another.php, содержащий
PHP:
<?php
session_start();
var_dump($_SESSION['tmpvar']);
и имеем на выходе NULL

другие браузеры на выходе показывают значение $_SESSION['tmpvar']
Если в коде index.php убрать return 1, корректно начинает работать даже firefox.

Как более популярно объяснить я не знаю :)
 

radioheaded

PHP нуб
Попробуйте выводить содержимое $_SESSION полностью. Еще отдельно я бы подебажил идентификатор сессии. Возможно, она у вас пересоздается по какой-то причине каждый раз.
 
Сверху