|
|
|
| Помогите разобраться с кукисами.
Есть вот такой мною написанный php код на сессиях
$col_n_prosmotr="3"; // количество выводимого товара
$id_tovar_array=$_GET['id']; // id товара
if(!isset($_SESSION['prosmotr_products'])){$_SESSION['prosmotr_products'][1]=$id_tovar_array;}
elseif(!in_array($id_tovar_array, $_SESSION['prosmotr_products']) && $one_sess==0){$_SESSION['prosmotr_products'][]=$id_tovar_array;}
$form_chislo=count($_SESSION['prosmotr_products'])-$col_n_prosmotr;
foreach($_SESSION['prosmotr_products'] as $key => $value) {
$s++;
if($s<=$form_chislo){unset($_SESSION['prosmotr_products'][$key]);}
}
foreach (array_reverse($_SESSION['prosmotr_products']) as $value_rev) {
echo $value_rev;
}
|
Он работает отлично, записывает id товара, который пользователь просматривал но вопрос заключается вот в чем при закрытии браузера сессии удаляются а как сделать так что бы он еще сохранял в кукисы а в последующем при открытии браузера данные из кукисов переносились в сессии | |
|
|
|
|
|
|
|
для: SaIdEr
(26.10.2012 в 16:24)
| | народ, вот дописал код собственно по тому вопросу который я и задавал, вот код:
$col_n_prosmotr="3"; // количество выводимого товара
$session_time_prosmotr="1"; // время жизни кукисов в минутах
$id_tovar_array=$_GET['id']; // id товара
$usr = unserialize($_COOKIE["cookie_prosmotr"]);
if(!isset($_SESSION['prosmotr_products'])){
if($usr==false){$_SESSION['prosmotr_products'][1]=$id_tovar_array;}
else{$_SESSION['prosmotr_products']=$usr;}
}
elseif(!in_array($id_tovar_array, $_SESSION['prosmotr_products'])){
$_SESSION['prosmotr_products'][]=$id_tovar_array;
}
$form_chislo=count($_SESSION['prosmotr_products'])-$col_n_prosmotr;
foreach($_SESSION['prosmotr_products'] as $key => $value) {
$s++;
if($s<=$form_chislo){unset($_SESSION['prosmotr_products'][$key]);}
}
if(isset($_SESSION['prosmotr_products'])){
@setcookie ("cookie_prosmotr", serialize($_SESSION['prosmotr_products']), time()+60*$session_time_prosmotr);
}
foreach (array_reverse($_SESSION['prosmotr_products']) as $value_rev) {
echo $value_rev;
}
|
просмотрите, правильно ли я реализовал его! | |
|
|
|
|
|
|
|
для: SaIdEr
(26.10.2012 в 17:32)
| | Ну если нет ответов, я как понял что сделал все правильно, но в
$usr = unserialize($_COOKIE["cookie_prosmotr"]);
|
я сделал поправку, не все сервера это понимают правильно и дописал так:
$usr = unserialize(stripcslashes($_COOKIE["cookie_prosmotr"]));
|
| |
|
|
|