PHP.50-TP框架商城应用实例-前台2-商品推荐
商品推荐
{抢购,新品,精品,热卖}效果如下

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-商品推荐的更多相关文章
- PHP.51-TP框架商城应用实例-前台3-楼层推荐、TP框架雪崩问题
楼层推荐 效果图 1.增加表字段 商品表 分类表 2.修改商品模型和分类模型接收字段is_floor 3.修改商品和分类相关的表单 4.后台制作推荐方法 4.1在分类模型中增加获取前台楼层数据的方 ...
- PHP.49-TP框架商城应用实例-前台1-公共布局、制作首页
公共布局包括 1.页头.页脚{layout} 正文:{__COMMENT__} 导入:<layout name="layout"> 2.商品导航{nav.html} = ...
- PHP.52-TP框架商城应用实例-前台4-商品详情页-面包屑导航、AJAX浏览历史
面包屑导航 思路:根据商品的主分类向上取出所有上级分类即可 1.在分类模型中增加取出所有上级分类的方法 /********** [面包屑导航]取出一个分类所有上级分类 **********/ pub ...
- 已有模板与tp框架的结合 (前台)
已有模板与tp框架的结合 具体步骤 A.复制模板文件到view指定目录 B. 复合css .js.img.静态资源文件到系统指定目录 C. 把静态资源(css,js,img)文件的路径设置为“常量 ...
- TP框架 商城前台用户注册方法
//注册 public function register(){ if(IS_POST){ //接收数据 $data = I('post.'); $model = D('User'); $data[' ...
- PHP.24-TP框架商城应用实例-后台1-添加商品功能、钩子函数、在线编辑器、过滤XSS、上传图片并生成缩略图
添加商品功能 1.创建商品控制器[C] /www.test.com/shop/Admin/Controller/GoodsController.class.php <?php namespace ...
- PHP.28-TP框架商城应用实例-后台5-多表操作-商品表与品牌表
表与表之间的关系:1:1 1:多 多:多 功能需求决定表关系 此处的表关系为:品牌表:商品表=1:多 1.首先在表结构上关联,在多的表(商品表)添加一个字段,关联一的表(品牌表)的ID(主键) 添加字 ...
- PHP.38-TP框架商城应用实例-后台14-商品管理-商品扩展分类的删除、修改
商品分类删除 1.删除商品时,根据商品id删除扩展分类表数据 商品扩展分类修改 1.在控制器GoodsController.class.php/edit()中根据商品id取出对应的所有扩展分类 2.在 ...
- PHP.33-TP框架商城应用实例-后台9-商品相册-修改、删除(AJAX)
商品相册图片删除 当商品删除时,把相册中的图片一并从硬盘和数据库中删除,根据商品id[因为每一张商品相片都会生成三张缩略图,所以删除时要将其缩略图一并删除] //钩子方法_before_delete: ...
随机推荐
- QuantLib金融库的简易安装
最近在弄毕设,研究关于固定收益债券定价方面的知识,需要使用到QuantLib这个Python金融库,但是这是一个C++编译的库,官网也只给出了源代码,安装起来十分繁琐,所以在网上找了一个简易的安装方法 ...
- ezmorph-1.0.6.jar的作用
使用json时要依赖的jar文件,在使用jquery的json时,没有引用该文件的时候容易报错.
- CPP-基础:信号量
windows api 多线程---信号量 信号量(Semaphore)和互斥量一样,属于内核对象.它自动执行可用资源查询的测试,如果有可用资源,则可用资源的计数减少1,从而避免其它线程请求资源.当该 ...
- VS调试_ASSERTE(_BLOCK_TYPE_IS_VALID(pHead->nBlockUse));崩溃原因及解决方法
今天下午对面的老大调试遇到这个问题,大家一起讨论好久才解决这个问题 crt源代码都是可以看到的,为了了解清楚原因,十分有必要查看源码,源码一般在你的VS安装路径下VC\crt\src下. 点击重试,定 ...
- C++中rapidxml用法及例子(源码)
rapidxml是一个快速的xml库,比tinyxml快了50-100倍.本文给出创建.读取.写入xml的源码. 由于新浪博客不支持文本文件上传,在使用下面代码需要先下载 rapidxml, ...
- 讲一个关于RSA加密算法的故事
有甲乙两个人,甲有两把钥匙,一把叫做甲的公钥,另一把叫做甲的私钥.乙同样有两把钥匙,一把叫做乙的公钥,另一把叫做乙的私钥. 某一天,甲乙成为了好朋友,甲想向乙发送一份保密数据,这份保密数据要求只有甲乙 ...
- Poj2010 Moo University - Financial Aid
题意的话,就看其他人的吧 概括:二分中位数 大体上便是二分一个中位数,带入检验,若分数比他小的有\(\lfloor n/2 \rfloor\)个,分数比他的大的也有这么多,而且贪心的买,花费小于预算. ...
- java Scanner和异常
Java Scanner 类 java.util.Scanner 是 Java5 的新特征,我们可以通过 Scanner 类来获取用户的输入. 下面是创建 Scanner 对象的基本语法: Scann ...
- java模拟浏览器发送请求
package test; import java.io.BufferedReader; import java.io.DataOutputStream; import java.io.IOExcep ...
- Python 学习笔记(十一)Python语句(二)
For 循环语句 基础知识 for循环可以遍历任何序列的项目,如一个列表或者一个字符串. 语法: for 循环规则: do sth >>> for i in "python ...