thinkPHP商城公告功能开发问题分析


Posted in PHP onDecember 01, 2016

本文实例分析了thinkPHP商城公告功能开发问题。分享给大家供大家参考,具体如下:

效果如下

thinkPHP商城公告功能开发问题分析

1.定在头部

position: fixed;
z-index: 999;
top: 0;
opacity:1;

2.ajax处理json数据

// 获取商城公告
function getNotice() { // 获取公告函数
  var res;
  $.ajax({
    type: "POST",
    url: "{sh::U('Store/Mall/ajaxGetNotice',array('mid'=>$mid))}",
    dataType:'json', // 设为json之后,就能够很好的处理获取的json数据,json.status
    async: false,
    success: function(json){
      res = json;
    }
  });
  return res;
}

设置dataType:'json'之后,json数据就直接可以通过json.的方式处理了。

3.最后加载,页面更好看。

$(document).ready(function(e) { // 主函数
  // 获取公告
  var action_name = "{sh::ACTION_NAME}"; // 页面使用thinkphp常量
  var json = getNotice();
  if ( action_name == 'index' && json.status == 1) { // 首页并且公告存在
    $(".top").css("margin-top", "70px"); // jquery设置css
    $(".main-sidebar").css("top" ,"70px");
    var html = '';
    $.each(json.info, function(i, n){ // n为文本内容
      html += "<li><strong>"+n.content+"</strong></li>"
    });
    $(".top-notice").show();
    $('#notice ul').html(""+html);
    $('#notice').unslider(); // 轮播
  }
});

4.获取sql语句的thinkphp处理

// 获取公告
function ajaxGetNotice() {
    if (IS_AJAX) {
      $this->mid;
      // 获取有效的,且结束时间大于当前时间的,或者日期等于0的公告
      $mallNoticeModel = M('Mall_notice');
      $where['mall_id'] = $this->mid;
      $where['status'] = 1;
      $where['endtime'] = array(array('eq',0),array('gt',time()), 'or') ;
      //SELECT * from sh_mall_notice where mall_id = 9 and status = 1 and (endtime = 0 or endtime>1458354366);
      $notice = $mallNoticeModel->where($where)->order('sort desc')->select();
      if (!empty($notice)) {
        $this->ajaxReturn(array('status'=>'1','info'=>$notice,'msg'=>"获取成功"),'JSON');
      } else {
        $this->ajaxReturn(array('status'=>'2','info'=>$notice,'msg'=>"公告不存在"),'JSON');
      }
    }
}
$where['endtime'] = array(array('eq',0),array('gt',time()), 'or') ;

巧妙的处理了这种逻辑关系。

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

PHP 相关文章推荐
PHP 高手之路(二)
Oct 09 PHP
php5 mysql分页实例代码
Apr 10 PHP
php 日期时间处理函数小结
Dec 18 PHP
通俗易懂的php防注入代码
Apr 07 PHP
PHP中文URL编解码(urlencode()rawurlencode()
Jul 03 PHP
destoon各类调用汇总
Jun 20 PHP
PHP使用json_encode函数时不转义中文的解决方法
Nov 12 PHP
两个php日期控制类实例
Dec 09 PHP
PHP SPL标准库之数据结构栈(SplStack)介绍
May 12 PHP
PHP正则表达式入门教程(推荐)
May 18 PHP
php7基于递归实现删除空文件夹的方法示例
Jun 15 PHP
PHP给前端返回一个JSON对象的实例讲解
May 31 PHP
thinkPHP订单数字提醒功能的实现方法
Dec 01 #PHP
PHP 芝麻信用接入的注意事项
Dec 01 #PHP
PHP中静态变量的使用方法实例分析
Dec 01 #PHP
php版阿里云OSS图片上传类详解
Dec 01 #PHP
thinkPHP线上自动加载异常与修复方法实例分析
Dec 01 #PHP
PHP通过引用传递参数用法分析
Dec 01 #PHP
PHP中list方法用法示例
Dec 01 #PHP
You might like
PHP+DBM的同学录程序(4)
2006/10/09 PHP
php制作中间带自己定义图片二维码的方法
2014/01/27 PHP
ThinkPHP连接数据库的方式汇总
2014/12/05 PHP
PHP实现bitmap位图排序与求交集的方法
2016/07/28 PHP
PHP Class SoapClient not found解决方法
2018/01/20 PHP
php操作redis命令及代码实例大全
2020/11/19 PHP
javascript 面向对象编程基础:封装
2009/08/21 Javascript
extjs 初始化checkboxgroup值的代码
2011/09/21 Javascript
JS.GetAllChild(element,deep,condition)使用介绍
2013/09/21 Javascript
css配合jquery美化 select
2013/11/29 Javascript
javascript为按钮注册回车事件(设置默认按钮)的方法
2015/05/09 Javascript
javascript显示倒计时控制按钮的简单实现
2016/06/07 Javascript
微信小程序如何获取用户信息
2018/01/26 Javascript
原生JS实现的简单轮播图功能【适合新手】
2018/08/17 Javascript
Vue插件打包与发布的方法示例
2018/08/20 Javascript
vue2之简易的pc端短信验证码的问题及处理方法
2019/06/03 Javascript
layUI实现三级导航菜单效果
2019/07/26 Javascript
解决Vue在Tomcat8下部署页面不加载的问题
2019/11/12 Javascript
Python字符和字符值(ASCII或Unicode码值)转换方法
2015/05/21 Python
python3+PyQt5实现使用剪贴板做复制与粘帖示例
2017/01/24 Python
Python实例方法、类方法、静态方法的区别与作用详解
2019/03/25 Python
详解python运行三种方式
2019/05/13 Python
Python使用sklearn库实现的各种分类算法简单应用小结
2019/07/04 Python
python实现ip代理池功能示例
2019/07/05 Python
python3实现斐波那契数列(4种方法)
2019/07/15 Python
Python3 中sorted() 函数的用法
2020/03/24 Python
pandas之分组groupby()的使用整理与总结
2020/06/18 Python
python logging模块的使用详解
2020/10/23 Python
Python通过yagmail实现发送邮件代码解析
2020/10/27 Python
Python 调用C++封装的进一步探索交流
2021/03/04 Python
英国在线潜水商店:Simply Scuba
2019/03/25 全球购物
波兰汽车配件网上商店:iParts.pl
2020/09/08 全球购物
将一个数的从第5位开始的7个数取出,其余位置0
2016/05/26 面试题
死亡证明书样本说明
2014/10/18 职场文书
2015年安全生产管理工作总结
2015/05/25 职场文书
初三语文教学反思
2016/03/03 职场文书