Maison développement back-end tutoriel php 用php实现类似淘宝,拍拍,易趣的最近浏览商品的功能模型代码,该如何处理

用php实现类似淘宝,拍拍,易趣的最近浏览商品的功能模型代码,该如何处理

Jun 13, 2016 am 10:03 AM
quot setcookie

用php实现类似淘宝,拍拍,易趣的最近浏览商品的功能模型代码
最近在做一个项目,要用到类似淘宝,拍拍,易趣的最近浏览商品的功能,在网络上遍寻不及,遂找出一ASP代码用PHP自行改写,得以下片段,先发上来和大家共享。此代码片段只包含cookie写入部分,读出处理的部分大家可以自行编写。最先跟帖提出建议的给以加分。

/*
RecentlyGoods File
Urchin Studio FoxCMS
Version: 1.1.6
Author: luckyfox ([email protected])
Copyright: Urchin Studio (www.itocean.net)
Last Modified: 2008-9-3

*/

//TempNum 显示临时记录数

$TempNum=5; 

//setcookie("RecentlyGoods", "12,31,90,39");

//RecentlyGoods 最近商品RecentlyGoods临时变量

if (isset($_COOKIE['RecentlyGoods']))
{
$RecentlyGoods=$_COOKIE['RecentlyGoods'];
$RecentlyGoodsArray=explode(",", $RecentlyGoods);
$RecentlyGoodsNum=count($RecentlyGoodsArray); //RecentlyGoodsNum 当前存储的变量个数

}

if($_GET['Id']!="")
{

$Id=$_GET['Id']; //ID 为得到请求的字符


//如果存在了,则将之前的删除,用最新的在尾部追加

if (strstr($RecentlyGoods, $Id)) 
{
//echo "已经存在,则不写入COOKIES


";
}
else
{
if($RecentlyGoodsNum {
if($RecentlyGoods=="")
{
setcookie("RecentlyGoods",$Id,time()+3600);
}
else
{
$RecentlyGoodsNew=$RecentlyGoods.",".$Id;
setcookie("RecentlyGoods", $RecentlyGoodsNew,time()+3600);
}
}
else //如果大于了指定的大小后,将第一个给删去,在尾部再加入最新的记录。
{
$pos=strpos($RecentlyGoods,",")+1; //第一个参数的起始位置
$FirstString=substr($RecentlyGoods,0,$pos); //取出第一个参数
$RecentlyGoods=str_replace($FirstString,"",$RecentlyGoods); //将第一个参数删除
$RecentlyGoodsNew=$RecentlyGoods.",".$Id; //在尾部加入最新的记录
setcookie("RecentlyGoods", $RecentlyGoodsNew,time()+3600);
}

}


}
?>


------解决方案--------------------
收藏。谢谢
------解决方案--------------------
学习..收藏。
------解决方案--------------------
up
------解决方案--------------------

------解决方案--------------------
up
------解决方案--------------------
jf
------解决方案--------------------
看看
------解决方案--------------------
支持.
------解决方案--------------------
if (strstr($RecentlyGoods, $Id)) 

//echo "已经存在,则不写入COOKIES
"; 
}

如果我看了100号,100保存了,然后我再看10号,那就不能保存了
------解决方案--------------------
很好,收藏了。。
------解决方案--------------------
学习..收藏。

------解决方案--------------------
对id的处理用字符串查找来处理,这样的方式其实不太合理。
PHP code
define('MAX_ITEMS', 5);$id = intval($_GET['id']);  // 确保id是整数if (isset($_COOKIE['recentlyGoods'])) {  // 已有历史数据,追加新数据  $goods = explode(',', $_COOKIE['recentlyGoods']);  // 取得id数组  $key = array_search($id, $goods); // 在历史数据中查找当前id  if ($key !== false) {    unset($goods[$key]);  // 找到则删除  }  $goods[] = $id; // 追加当前浏览的id} else {  // 尚未有历史数据,创建并将当前浏览id加入  $goods = array($id);}// 如果数组中历史数据条目超出限制,则截取最后一段if (count($goods) > MAX_ITEMS) {  // 从倒数第MAX_ITEMS条开始提取MAX_ITEMS条记录  $goods = array_slice($goods, 0 - MAX_ITEMS, MAX_ITEMS);}setcookie('recentlyGoods', join(',', $goods), time()+3600);<div class="clear">
                 
              
              
        
            </div>
Copier après la connexion
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Que faire si setcookie php échoue Que faire si setcookie php échoue Oct 26, 2022 am 09:07 AM

Solution à l'échec de setcookie php : 1. Ouvrez le fichier PHP correspondant ; 2. Vérifiez si les paramètres du nom de domaine sont standardisés ; 3. Implémentez-le via des variables globales, du code tel que "foreach ($_COOKIE["cookie"] comme $ nom => $valeur) {$nom = htmlspecialchars($nom);$value = htmlspecialchars($value);echo...".

php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决 php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决 Jun 13, 2016 am 10:23 AM

php提交表单通过后,弹出的对话框怎样在当前页弹出php提交表单通过后,弹出的对话框怎样在当前页弹出而不是在空白页弹出?想实现这样的效果:而不是空白页弹出:------解决方案--------------------如果你的验证用PHP在后端,那么就用Ajax;仅供参考:HTML code

Comment utiliser la fonction setcookie pour définir des cookies en PHP Comment utiliser la fonction setcookie pour définir des cookies en PHP Jun 26, 2023 pm 12:00 PM

Dans le développement Web, les cookies sont une technologie très courante qui permet aux applications Web de stocker et d'accéder à des données côté client. En programmation PHP, la configuration des cookies est généralement implémentée à l'aide de la fonction setcookie. La syntaxe de la fonction setcookie est la suivante : boolsetcookie(string$name[,string$value[,int$expire[,string$path[,

Que signifie l'horodatage 0 dans php setcookie ? Que signifie l'horodatage 0 dans php setcookie ? Mar 22, 2023 am 10:38 AM

La fonction setcookie() en PHP est un moyen de définir un cookie sur le navigateur client. Il permet au site Internet d'identifier l'utilisateur grâce à des cookies lors de sa prochaine visite et de lui fournir les services correspondants. setcookie() a plusieurs paramètres, notamment le nom du cookie, la valeur, le délai d'expiration, etc. Lors de la définition du délai d'expiration, il peut être spécifié par horodatage. Cependant, nous constatons parfois que les horodatages sont définis sur 0. Qu'est-ce que cela signifie ?

Utilisez la fonction PHP 'setcookie' pour paramétrer les cookies Utilisez la fonction PHP 'setcookie' pour paramétrer les cookies Jul 25, 2023 am 09:22 AM

Définir des cookies à l'aide de la fonction PHP "setcookie" Dans le développement de sites Web, les cookies sont une technologie très courante utilisée pour stocker une petite quantité de données dans le navigateur de l'utilisateur afin de transmettre des informations entre différentes pages. PHP fournit une fonction appelée « setcookie » pour définir les valeurs et les attributs des cookies. Dans cet article, nous allons apprendre comment paramétrer les cookies grâce à la fonction « setcookie ». Ce qui suit est l'utilisation de "setcook

图片消失怎么解决 图片消失怎么解决 Apr 07, 2024 pm 03:02 PM

图片消失如何解决先是图片文件上传$file=$_FILES['userfile'];  if(is_uploaded_file($file['tmp_name'])){$query=mysql_query("INSERT INTO gdb_banner(image_src ) VALUES ('images/{$file['name'

不用数据库来实现用户的简单的下载,代码如下,但是却不能下载,请高手找下原因,文件路劲什么的没有关问题 不用数据库来实现用户的简单的下载,代码如下,但是却不能下载,请高手找下原因,文件路劲什么的没有关问题 Jun 13, 2016 am 10:15 AM

不用数据库来实现用户的简单的下载,代码如下,但是却不能下载,请高手找下原因,文件路劲什么的没问题。

为什么小弟我在php上写的这个代码,在浏览器上什么都不显示 为什么小弟我在php上写的这个代码,在浏览器上什么都不显示 Jun 13, 2016 am 10:24 AM

为什么我在php上写的这个代码,在浏览器上什么都不显示啊

See all articles