Помогите построить структуру корзины на сессиях

N
На сайте с 14.06.2004
Offline
107
567

Есть пользователи сайта: гости и зарегистрированные

При заходе на сайт используется следующая проверка:


//
if($page_protect->access()==true)
{
$US=$_SESSION['uslogin'];
$smarty->assign("login", $_SESSION['uslogin']);
$smarty->assign("US", $_SESSION['uslogin']);
}
else
{
$US=$_SESSION['nologin'];
$smarty->assign("nologin", $_SESSION['nologin']);
$smarty->assign("US", $_SESSION['nologin']);
}

//Функция access()
function access() {
if( $this->login_reader()) //Эта функция видит что есть кука и присаевает $_SESSION['uslogin']=$this->email;
{
return true;
}
if(isset($_SESSION['uslogin'])) //Залогинен обычным методом без кук. Переменная $_SESSION['uslogin'] определена
{
return true;
}
else // Пришел гость. Регистрируем сес.переменную под гостя.
{
session_register("nologin");
$_SESSION['nologin']='gest';
return false;
}
}

// Функция выхода из системы
function log_out() {
setcookie ($this->cookie_name, "", time()-25*14*360000, '/');
session_unregister("name");
session_destroy();
header("Location: http://www.site.com/");

}

Проблема в следующем.

Захожу под гостем. Выбираю 10 позиций товара в корзину. Потом логинюсь в ситему. В корзине показывает 0 позиций(правильно). Выбираю 5 позиций. Все нормально. Теперь разлогиниваюсь - пишет 10 (те что были до входа в систему)

Как в моем случае сделать чтобы после выхода из системы стартовала новая "гостевая" сессия и елементов в корзине было 0


//Выборка количетсва елементов из корзины идет после блока if($page_protect->access()==true) на каждой странице
$sql="select * from korzina where us_id='".$US."'";
$res=db_select($sql);
$n=mysql_num_rows($res);
$smarty->assign("n", $n);
BR
На сайте с 28.06.2008
Offline
75
#1
размещение сайтов (http://www.brim.ru)
N
На сайте с 14.06.2004
Offline
107
#2

Сделал немного по другому все упростив. Тему можно закрыть

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий