商品列表页面“喜欢“ 功能实现

2016-07-07 14:55 来源:www.chinab4c.com 作者:ecshop专家




1、通过后台执行sq 执行
  1. ALTER TABLE `ecs_goods` ADD `love` INT( 10 ) NOT NULL DEFAULT '0';
复制代码
在goods表添加一新的字段。

2、打开category.php找到category_get_goods 这个函数 把要显示的 love也给放进去 会程序的网友应该明白意思 。


  1. /* 获得商品列表 */
  2. $sql = 'SELECT g.goods_id, g.goods_name, g.goods_name_style, g.market_price,g.love, g.is_new, g.is_best, g.is_hot, g.shop_price AS org_price, ' .
  3. "IFNULL(mp.user_price, g.shop_price * '$_SESSION[discount]') AS shop_price, g.promote_price, g.goods_type, " .
  4. 'g.promote_start_date, g.promote_end_date, g.goods_brief, g.goods_thumb , g.goods_img ' .
  5. 'FROM ' . $GLOBALS['ecs']->table('goods') . ' AS g ' .
  6. 'LEFT JOIN ' . $GLOBALS['ecs']->table('member_price') . ' AS mp ' .
  7. "ON mp.goods_id = g.goods_id AND mp.user_rank = '$_SESSION[user_rank]' " .
  8. "WHERE $where $ext ORDER BY $sort $order";
复制代码


  1. $arr[$row['goods_id']]['love'] = $row['love'];
  2. $arr[$row['goods_id']]['name'] = $row['goods_name'];
复制代码


3、打开goods_list.lbi


  1. <a href="javascript:;"onClick="change_love({$goods.goods_id})">喜欢</a><font id="show_loves_{$goods.goods_id}">{$goods.love} </font>
复制代码

一定是在foreach循环里。

在这个lbi底部加
  1. <script>
  2. function change_love(goods_id)
  3. {
  4. var Lastsend = document.getCookie('ECS_auction_Lastsend_'+goods_id);
  5. //alert(goods_id);
  6. if(Lastsend == null)
  7. {
  8. Ajax.call( 'goods.php?act=chage_usenum','id=' + goods_id,chage_lovenum_Resp**e, 'POST', 'JSON');
  9. document.setCookie('ECS_auction_Lastsend_'+goods_id,goods_id);
  10. }
  11. else
  12. {
  13. window.location.href='goods.php?id='+goods_id;
  14. }
  15. }
  16. function chage_lovenum_Resp**e(result)
  17. {
  18. document.getElementById("show_loves_"+result.id).innerHTML = result.usenum;
  19. }


  20. </script>
复制代码


4、打开goods.php

36行左右加入


  1. if($_REQUEST['act']=='chage_usenum')
  2. {
  3. include('includes/cls_json.php');
  4. $json= new JSON;
  5. $res = array('err_msg' => '', 'result' => '', 'qty' => 1);
  6. $id = $_REQUEST['id'];

  7. $sql = $GLOBALS['db']->query("update ".$GLOBALS['ecs']->table('goods')." set love=love+1 where goods_id='$id'");
  8. $res['id']= $id;
  9. $res['usenum'] = $GLOBALS['db']->getOne("select love from ".$GLOBALS['ecs']->table('goods')." where goods_id='$id'");
  10. die($json->encode($res));
  11. }
复制代码

回答:
OK支持一个

支持一下 楼主牛人呀

ECSHOP程序员
1.公司基于ECshop架构的商城二次开发及维护。
2.基于php+mysql的web产品的程序设计及编写。
3.产品模块的技术测试。
4.编写技术文档。

工作要求:
1、全面负责公司电子商务平台的技术方向研究和总体规划,为公司业务发展提供全面的技术支持;
2、负责带领技术团队构架、研发、设计,完成网站整体搭建及产品开发;负责为重点项目制定技术解决方案;负责协助解决各项目过程中遇到的技

术问题;负责部门技术人员的技术能力提升;
3、要求有2年以上的Ecshop二次开发经验(不满足此条件勿投),精通PHP以及MYSQL开发
4、熟悉PHP相关模板技术,会FLASH AS编程技术;
5、精通ajax技术,能在项目中使用ajax技术;
6、有独立设计数据库的能力,能独立设计中小型项目,有团队开发意识 ;能按需求开发相应的新功能。
7、有良好的程序书写风格,已经开发文档的编写。能在规定时间内完成对应的工作.

任职资格:
1.性别不限,年龄不限,大专以上学历,计算机专业毕业优先。
2.善于与人沟通,耐心细致,具备较强的学习能力。
3.至少3年以上php开发经验。能独立开发一个完整的项目。
4.有很强的沟通表达能力和团队合作精神;
5.有知名电子商务网站相关经验者优先。
薪酬:试用期三个月4500,过后5000+奖金+提成
联系方式:QQ:1413332101(注明:ECSHOP程序员)Mobile:13590131517 黄经理
简历请发至:hailong.yan@longtengjie.com
工作地点:深圳福田
此信息一个月内有效(7/3-8/3)

楼主你真牛收藏此文

谢谢齐老师,呵呵

没成功,可以读取数据库的“love”的值显示,但不能写入,不懂是哪里出错

很不错啊牛啊

必顶,老齐

我不太懂程序,不过现在正处于学习阶段

谢谢齐老师

很不错的呀收下了

经常逛论坛,
比较长见识