[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Не правильно осчищается unset ($_SESSION['link']);
linf
Это скрипт переброски пользователя по ссылке. Работать должен так? Если пришла переменная в POST, то найти на ее основе нужную ссылку в базе и перейти по ней. Если нет, просто отобразить контент страницы

session_start();
//если пришло число НЕ ноль, то пишем в сессию
if ($_POST['id'] > 0) {$_SESSION['id'] = $_POST['id'];}
//если в сессии есть, выполним:
if ($_SESSION['id'] > 0)
{
//получим нужную ссылку
$id = trim($_SESSION['id']);
$result_clips = mysql_query("SELECT * FROM `clips` WHERE `id`='$id'", $db);
$clips = mysql_fetch_assoc($result_clips);
$link = $clips['link'];
//почистим сессию:
unset ($_SESSION['id']);
//перейдем по ссылке
?><script type="text/javascript">
document.location.href = "<?=$link;?>";
</
script><?
exit();
}

// тут контент который показывается если переменной передано небыло


Проблема в том, что значение в $_SESSION['id'] исчезает, хотя unset ($_SESSION['id']); происходит после того как значение попало в $id. Почему так происходит???



Спустя 43 минуты, 57 секунд (20.11.2011 - 15:47) TranceIT написал(а):
Какие ошибки выводит?

Спустя 15 минут, 31 секунда (20.11.2011 - 16:03) linf написал(а):
Проблему решил сам.
Все дело было в том, что POST передавался AJAX по ссылке, и переход был уже после того как выполнялось $_SESSION['id'] = $_POST['id']; и unset ($_SESSION['id']);
соответственно $_SESSION['id'] была пустой

Спустя 5 минут, 4 секунды (20.11.2011 - 16:08) TranceIT написал(а):
Сопсно я догадывался что в этом проблема =)


_____________
Live in new format =)
Быстрый ответ:

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