商品推荐

{抢购,新品,精品,热卖}效果如下

1、在商品表增加促销价格促销起始时间结束时间三个字段,字段推荐楼层排序在后面用到

 注意:在增加datetime类型字段时,要添加默认值{datetime范围:1000-01-01 00:00:00 到 9999-12-31 23:59:59};并且关闭MySQL严格模式,因为promote_price(decimal(10,2))无法插入空值;但建议开发阶段开启

2、表单与时间插件

3、修改商品模型允许接收字段

4、前台取出推荐的商品

  // 取出当前正在促销的商品
public function getPromoteGoods($limit = 5)
{
$today = date('Y-m-d H:i');
return $this->field('id, goods_name, mid_logo, promote_price')
->where(array(
'is_on_sale' => array('eq', '1'),
'promote_price' => array('gt', 0),
'promote_start_date' => array('elt', $today),
'promote_end_date' => array('egt', $today),
))->limit($limit)
->select();
}
// 取出三种推荐{热卖、精品、新品}
public function getRecGoods($recType)
{
return $this->field('id,goods_name,mid_logo,shop_price')
->where(array(
'is_on_sale' => array('eq', '1'),
"$recType" => array('eq', '是')
))
->limit($limit)
->order('sort_num') // 根据sort_num字段排序
->select();
}

5、在Home/IndexController.class.php控制器中取出

6、index.html页面循环输出

注:为了能够更精确的排序商品,我们可以为商品再添加一个字段sort_num,这个字段保存一个数字,数字越小越靠前

PHP.50-TP框架商城应用实例-前台2-商品推荐的更多相关文章

  1. PHP.51-TP框架商城应用实例-前台3-楼层推荐、TP框架雪崩问题

    楼层推荐 效果图 1.增加表字段 商品表   分类表 2.修改商品模型和分类模型接收字段is_floor 3.修改商品和分类相关的表单 4.后台制作推荐方法 4.1在分类模型中增加获取前台楼层数据的方 ...

  2. PHP.49-TP框架商城应用实例-前台1-公共布局、制作首页

    公共布局包括 1.页头.页脚{layout} 正文:{__COMMENT__} 导入:<layout name="layout"> 2.商品导航{nav.html} = ...

  3. PHP.52-TP框架商城应用实例-前台4-商品详情页-面包屑导航、AJAX浏览历史

    面包屑导航  思路:根据商品的主分类向上取出所有上级分类即可 1.在分类模型中增加取出所有上级分类的方法 /********** [面包屑导航]取出一个分类所有上级分类 **********/ pub ...

  4. 已有模板与tp框架的结合 (前台)

    已有模板与tp框架的结合 具体步骤   A.复制模板文件到view指定目录 B. 复合css .js.img.静态资源文件到系统指定目录 C. 把静态资源(css,js,img)文件的路径设置为“常量 ...

  5. TP框架 商城前台用户注册方法

    //注册 public function register(){ if(IS_POST){ //接收数据 $data = I('post.'); $model = D('User'); $data[' ...

  6. PHP.24-TP框架商城应用实例-后台1-添加商品功能、钩子函数、在线编辑器、过滤XSS、上传图片并生成缩略图

    添加商品功能 1.创建商品控制器[C] /www.test.com/shop/Admin/Controller/GoodsController.class.php <?php namespace ...

  7. PHP.28-TP框架商城应用实例-后台5-多表操作-商品表与品牌表

    表与表之间的关系:1:1 1:多 多:多 功能需求决定表关系 此处的表关系为:品牌表:商品表=1:多 1.首先在表结构上关联,在多的表(商品表)添加一个字段,关联一的表(品牌表)的ID(主键) 添加字 ...

  8. PHP.38-TP框架商城应用实例-后台14-商品管理-商品扩展分类的删除、修改

    商品分类删除 1.删除商品时,根据商品id删除扩展分类表数据 商品扩展分类修改 1.在控制器GoodsController.class.php/edit()中根据商品id取出对应的所有扩展分类 2.在 ...

  9. PHP.33-TP框架商城应用实例-后台9-商品相册-修改、删除(AJAX)

    商品相册图片删除 当商品删除时,把相册中的图片一并从硬盘和数据库中删除,根据商品id[因为每一张商品相片都会生成三张缩略图,所以删除时要将其缩略图一并删除] //钩子方法_before_delete: ...

随机推荐

  1. 【深入理解JAVA虚拟机】第三部分.虚拟机执行子系统.1.类文件结构

    无关性 无关性的体现有两个方面: 1.平台无关性:可在不同的操作系统和机器指令集上执行,可在不同厂商的虚拟机平台上执行. 2.语言无关性:用不同编程语言写出的代码编译生成的文件都可以运行. 实现思想: ...

  2. 自动生成气泡对话框的jQuery插件CreateBubble.js

    之前在写一个界面,想要用到气泡,然而一直找不到现成的有效地办法,是在没有办法了我只好自己写一个,于是就有了现在的CreateBubble.js.很简单的一个函数,但是非常实用. 使用方法: 1.HTM ...

  3. github基本概念

    github: 托管项目代码. 仓库(repository):用来存放项目的代码,每个项目对应一个仓库,多个项目则有多个仓库. 收藏(star):收藏项目的人数.收藏别人的项目方便下次查看. 复制克隆 ...

  4. 用js或JQuery模拟点击a标签的操作

    一.用js模拟点击a标签的操作. jsp代码: <a id="login" href="${pageContext.request.contextPath}/log ...

  5. thinkphp5.0查询到的数据表中的路径是反斜杠导致无法正常显示图片怎么办?

    添加到数据表中图片的路径有时会是反斜杠,这就导致了在url后面写路径的时候会识别不出来(不过src后面写路径就可以识别),所以就需要把路径中的反斜杠替换成正斜杠,代码如下: $datu = Db::q ...

  6. C++自定义函数

    函数可以看成是用户为了解决某特定问题而定义的操作.除了在C++语法里自带的函数,有时候我们需要处理某个问题.但C++里并没有这个函数,这时我们就可以自己来定义一个函数实现需要的功能. 比如我们定义个求 ...

  7. Jmeter--JDBC请求(sqlserver)

    做JDBC请求,首先要了解这个JDBC对象是什么,然后寻找响应的数据库连接URL和数据库驱动. 数据库URL:jdbc:sqlserver://200.99.197.190:1433;database ...

  8. android中OpenMax的实现【3】OMX中主要成员

    原文 http://blog.csdn.net/tx3344/article/details/8117908 通过上文知道了,每个AwesomePlayer 只有一个OMX服务的入口,但是Awesom ...

  9. SecureCRT连接主机时(串口/网络),无法从键盘输入

    Session Option-Connection-Serial-Flow Control,里面的选项全部取消掉,再重启CRT就ok了...

  10. git-git remote

    使用git的时候难免会用到remote tracking,下面简要记录一下在使用git remote时的一些技巧 (1)add $git remote add origin https://githu ...