我對cookies幾乎沒有經驗,所以我不知道該怎麼做。
我有一件T恤衫,每件T恤都有一件$articleID
。
每次用戶訪問T恤頁面時,我想將$articleID
添加到cookie中。 然後將它添加到數組或其他東西,以便稍後可以檢索它。 即使訪問者訪問了兩次相同的$articleID
,也不應該有任何重複$articleID
。
然後在主頁上,我想檢索訪問的最後5個$articleID
的列表並顯示該ID的列表。
我該怎麼做?
謝謝!
我對cookies幾乎沒有經驗,所以我不知道該怎麼做。
我有一件T恤衫,每件T恤都有一件$articleID
。
每次用戶訪問T恤頁面時,我想將$articleID
添加到cookie中。 然後將它添加到數組或其他東西,以便稍後可以檢索它。 即使訪問者訪問了兩次相同的$articleID
,也不應該有任何重複$articleID
。
然後在主頁上,我想檢索訪問的最後5個$articleID
的列表並顯示該ID的列表。
我該怎麼做?
謝謝!
,以存儲Cookie中的數組,你需要序列化,以便檢查,如果這個代碼將有助於
$articles = array();
if (isset($_COOKIE["viewed_articles"]))
$articles = unserialize($_COOKIE["viewed_articles"]);
if (! in_array($articleID, $articles)){
$articles[] = $articleID;
}
// at the end update the cookies
setcookie("viewed_articles", serialize($articles));
發起會話
我希望這會有所幫助,並在此link
是這樣的嗎?
<?php
$article_id = 1; // Whichever article you're currently viewing
session_start();
if (! isset($_SESSION['viewed_articles']))
{
$_SESSION['viewed_articles'] = array();
}
if (! in_array($article_id, $_SESSION['viewed_articles']))
{
$_SESSION['viewed_articles'][] = $article_id;
}
您是否嘗試過使用Sessions? Cookie會將這些值存儲在用戶計算機上。該數據在每次頁面加載時都會傳輸到您的Web服務器。
會話將數據存儲在服務器端。會話通過將會話ID存儲爲用戶瀏覽器中的cookie來工作,該瀏覽器對應於存儲在服務器上的會話。
如果你正在使用PHP,您可以通過使用
<?php
session_start();
$_SESSION['key'] = 'value';
echo $_SESSION['key']; // outputs: value
?>
處有一個循環,您是否考慮使用會話?請看[Cookies vs. Sessions](http://www.tuxradar.com/practicalphp/10/1/0) – 2013-03-06 19:56:57