最近浏览过的商品
public function actionView($id) {
$model = $this->loadModel($id);
/* 记录浏览历史 */
if (isset(Yii::app()->request->cookies['history'])) {
$history = explode(',', Yii::app()->request->cookies['history']->value);
array_unshift($history, $id);
$history = array_unique($history);
while (count($history) > 5) {
array_pop($history);
}
$cookie = new CHttpCookie('history', implode(',', $history));
$cookie->expire = F::gmtime() + 3600 * 24 * 30;
Yii::app()->request->cookies['history'] = $cookie;
} else {
$cookie = new CHttpCookie('history', $id); //value = $id;
$cookie->expire = F::gmtime() + 3600 * 24 * 30;
Yii::app()->request->cookies['history'] = $cookie;
}
/* 更新点击次数 */
$model->click_count = $model->click_count + 1;
$model->save();
$this->render('view', array(
'model' => $model,
));
}
清除
public function actionClearHistory() {
unset(Yii::app()->request->cookies['history']);
}
/*
* 暴力清除商品浏览历史记录!
*/
$("#clearRec").click(function(event) {
alert(1);
$.ajax({
url: "<?php echo Yii::app()->createUrl('/item/clearHistory') ?>",
async: false
}),
$(".recent").html("").append("<div style='padding:20px'>没有商品浏览记录!</div>");
});
view
<ul>
<?php
if (isset(Yii::app()->request->cookies['history'])) {
$ids = Yii::app()->request->cookies['history']->value;
$item_ids = explode(',', $ids);
foreach ($item_ids as $item_id) {
$item = Item::model()->findByPk($item_id);
?>
<li><div class="i-img"><?php echo $item->getRecentThumb() ?></div><div class="i-name"><?php echo $item->getTitle() ?></div></li>
<?php
}
} else {
echo '<div style="padding:20px">没有商品浏览记录!</div>';
}
?>
</ul>