php收藏功能如何实现

php收藏功能的实现方法:首先创建好数据库表 ;然后创建前台代码,实现登录界面;接着通过html实现收藏样式;最后使用php进行后台处理即可。

15b558a74dd54e0d5de2ee6c9e6f9778.png

推荐:《PHP视频教程》

这是数据库表

b08065115f488b24c696795272a9b659.png

话不多说上代码

前台

$(function(){

$('#sc').click(function(){

var gid=$(this).attr('data-id'); var data={

gid:gid

};

$.ajax({

url:"{:U('Goods/collect_add')}",

type:"post",

data:data,

success:function(data){

// window.clearInterval(timer);

if(data==1){

window.location.href="{:U('Public/login')}"; //登陆界面

}else { if(data==2){

$('#sc').css({ 'background-color':'white', 'color':'#00ccff',

});

$('#sc_words').html( '收藏'

);

}else if(data==3){

$('#sc').css({ 'background-color':'#00ccff', 'color':'white',

});

$('#sc_words').html( '已收藏'

);

}else{

alert(data);

}

}

},

error:function(){

alert('请求失败');

}

});

});

})

html部分

收藏

php后台处理// 商品收藏 1 代表未登录 2代表取消收藏 3 代表 收藏成功

public function collect_add(){

if(empty(session('uid'))){ echo '1';

}else { $collect=M('collect'); $gid=I('post.gid'); //先确定是否已收藏

$map['gid']=$gid; $map['uid']=session('uid'); $data=$collect->where($map)->find(); if($data){ if($data['status']==1){ $collect->where('id='.$data['id'])->setField('status',0); echo '2';

}else{ $collect->where('id='.$data['id'])->setField('status',1); echo '3';

}

}else{ if($collect->create()){ $collect->gid=$gid; $collect->create_time=get_date(); $collect->uid=session('uid'); $collect->status=1; $collect->add(); echo '3';

}else{ echo '服务器出错,请重试!';

}

}

}

}

php收藏功能如何实现的教程已介绍完毕,更多请关注跳墙网其他文章教程!

php收藏功能如何实现相关教程

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/news/277428.shtml
繁体地址,请注明出处:http://hk.pswp.cn/news/277428.shtml
英文地址,请注明出处:http://en.pswp.cn/news/277428.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

quartus FIR仿真笔记

第一章: 最近百度了一些fir滤波器的资料,都没有自己想要的。容我吐槽一大段文字> 在旧版的quartus中,比如13.0,有两个fir滤波器的选项,如下所示: 网上很多都是讲不带II的那个,而在新版的quar…

关于时钟

/** * 时间获取 * * param mGITime 控件 * param context 承接上下文 */public void endTime(GeneralInput mGITime, Context context) { TimePickerDialog tp new TimePickerDialog(context, (view12, hourOfDay, minute) -> { StringBuilder sb new StringBui…

LVS + Keepalived 双机热备+DR模式

简介 Keepalived 起初是专门针对 LVS 设计的一款强大的辅助工具,主要用来提供故障切换和健康检查( Health Checking )功能——判断 LVS 负载调度器、节点服务器的可用性,及时隔离并替换为新的服务器,当故障主机恢复后就…

php程序layer,php 提交表单 关闭layer弹窗iframe的实例讲解

介绍一款非常好用的前端弹窗插件:根据官方的API:layer的iframe弹窗//iframe层-父子操作layer.open({type: 2,area: [700px, 530px],fix: false, //不固定maxmin: true,content: test/iframe.html});这里以php开发为例 演示如何 提交表单后自动关闭layer弹…

Django之 RESTful规范

RESTful 规范 一、什么是RESTful REST与技术无关,代表的是一种软件架构风格,REST是Representational State Transfer的简称,中文翻译为“表征状态转移”REST从资源的角度类审视整个网络,它将分布在网络中某个节点的资源通过URL进行…

php编译 ftp,无需重新编译php加入ftp扩展的解决方法

首先,进入源码目录cd php-5.2.13/ext/ftp#运行phpize生成configure/usr/local/php/bin/phpize#编译,指定php-config,注意这里的php-config,不是php.ini./configure --with-php-config/usr/local/php/bin/php-config#上面可以添加--enable-ftp,也可以不用添加#编译安…

git常用命令及分支简介

2019独角兽企业重金招聘Python工程师标准>>> 1、git基本命令 1)git add 将想要快照的内容写入缓存区 2)git status -s "AM" 状态的意思是,这个文件在我们将它添加到缓存之后又有改动 3)git commit -m 第一次…

企业私有云部署im,视频服务

1,安全问题 2,员工跨地域 3,内部视频培训 考勤申请,设备借用申请 名片申请 会议室预订 审批 内网,局域网部署 Android源码 https://github.com/starrtc/android-demo ios源码https://github.com/starrtc/ios-demo

php html 伪静态,php 伪静态(url重写)的写法

来看下面这个网页 url:http://www.jbxue.com/test.php/1,100,8630.html其实处理的脚本是test.php 参数为1,100,8630相当于test.php?a1&b1100&c8630 只不过这样的URL太难记。搜索引擎也不喜欢。真静态只是完全生成了HTML。客户端访问的时候直接输出。不用脚…

客服工作台

public Page<Record> customerDeskList(QhyfController controller) throws Exception {//获取分页信息PageInfo pageInfo controller.getPageInfo();int pageNumber pageInfo.getPageIndex();int pageSize pageInfo.getPageSize();List<String> paras new Arr…

Leetcode怎么调试java代码,在Clion上调试LeetCode代码

在Clion上调试LeetCode代码在leetcode上做题调试起来总有些不方便&#xff0c;所以查阅了一些资料后&#xff0c;按以下配置&#xff0c;自我感觉效率还行&#xff0c;分享给大家。祝大家刷题愉快。并附上自己整理的leetcode400题题表。Leetcode400题&#xff1a;notion地址依赖…

来入门一下kotlin吧

Kotlin是什么&#xff1f; Kotlin是一种在java虚拟机上运行的静态类型的编程语言&#xff0c;被称之为 Android 世界的Swift&#xff0c;由 JetBrains 设计开发并开源。 Kotlin的优势&#xff01; Kotlin可以编译成java字节码&#xff0c;也可以编译成JavaScript。方便在没有ja…

apache2 配置php,Windows配置PHP5与Apache2

windows下安装和配置PHP5与Apache2真是比linux下难多了&#xff0c;唉。这里用的是PHP Version 5.2.1和Apache HTTP Server 2.2.4&#xff0c;都是从官方网站下的。1. 下载安装&#xff0c;不多说了&#xff0c;apache一路按下去就ok&#xff0c;php连按都不用&#xff0c;解压…

ReactNative 触摸事件处理

ReactNative触摸事件处理 对RN触摸事件的捕获与冒泡机制的理解 组件A、B、C结构 组件A组件B组件C 捕获、冒泡机制 sequenceDiagram A->>A: 是否捕获&#xff1f;若是则停止向下一级传递 A->>B: B->>B: 是否捕获&#xff1f;若是则停止向下一级传递 B->&g…

CISCO网络故障排错命令总结分享

一、故障处理命令 1、show命令&#xff1a; 1&#xff09; 全局命令&#xff1a; show version &#xff1b;显示系统硬件和软件版本、DRAM、Flash show startup-config &#xff1b;显示写入NVRAM中的配置内容 show running-config &#xff1b;显示当前运行的配置内容 show b…

java input回车,用java怎样编写加减乘除,从键盘输入,例如:1+2按回车得到

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼import org.junit.Test;import java.util.regex.Matcher;import java.util.regex.Pattern;public class TestCalc {Testpublic void testCalculator() {String input "11";//输入String rule "(\\d\\.?\\d*)([\\…

Java中数组在内存中的存放原理?

版权声明&#xff1a;本文为博主原创文章&#xff0c;未经博主允许不得转载。 https://blog.csdn.net/yangyong0717/article/details/79165685Java中数组被实现为对象&#xff0c;它们一般都会因为记录长度而需要额外的内存。对于一个原始数据类型的数组&#xff0c;一般需要24…

程序员如何面试才能拿到offer

一、概述 面试&#xff0c;难还是不难&#xff1f;取决于面试者的底蕴&#xff08;气场技能&#xff09;、心态和认知及沟通技巧。面试其实可以理解为一场聊天和谈判&#xff0c;在这过程中有心理、思想上的碰撞和博弈。其实你只需要搞清楚一个逻辑&#xff1a;“面试官为什么会…

php 跨区域,如何构造PHP的内容包括在非安全(http://)和安全(https://)区域以及跨多个目录使用?...

只需使用//example.com/foo.blah即可.< img id “sample-image”src “// /media/sample-image.png”/>很明显,HTTP是协议,但存在其他协议,如GOPHER,HTTPS,FTP等……而不是在gopher URL gopher&#xff1a;//example.com上,您只需链接到//example.com,协议就可以在没有它…

Generative Adversarial Learning Towards Fast Weakly Supervised Detection(CVPR2018)阅读笔记

弱监督目标检测相对于一般的目标检测任务来说&#xff0c;训练样本不需要实例级别的标注&#xff0c;只需要图片级别的标注&#xff0c;即告诉图片中有什么而不需标注位置信息&#xff0c;这种标注图片容易获取&#xff0c;能节省标注时间及精力。现有的大部分方法在进行若监督…