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使之能同时支持GIF和JPEG
Oct 09 PHP
一步一步学习PHP(1) php开发环境配置
Feb 15 PHP
纯php打造的tab选项卡效果代码(不用js)
Dec 29 PHP
PHP多个版本的分析解释
Jul 21 PHP
PHP中全局变量global和$GLOBALS[]的区别分析
Aug 06 PHP
说说PHP的autoLoad自动加载机制
Sep 27 PHP
探讨:如何使用PhpDocumentor生成文档
Jun 25 PHP
PHP的preg_match匹配字符串长度问题解决方法
May 03 PHP
ThinkPHP写数组插入与获取最新插入数据ID实例
Nov 03 PHP
ThinkPHP中create()方法自动验证实例
Apr 26 PHP
实例讲解PHP页面静态化
Feb 05 PHP
Laravel使用原生sql语句并调用的方法
Oct 09 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 header函数的常用http头设置
2015/06/25 PHP
Laravel框架实现利用监听器进行sql语句记录功能
2018/06/06 PHP
让whoops帮我们告别ThinkPHP6的异常页面
2020/03/02 PHP
Aliyun Linux 编译安装 php7.3 tengine2.3.2 mysql8.0 redis5的过程详解
2020/10/20 PHP
js获取IP和PcName(IE)在vs中可用
2013/08/02 Javascript
JQuery触发事件例如click
2013/09/11 Javascript
js与运算符和或运算符的妙用
2014/02/14 Javascript
JS中判断null的方法分析
2016/11/21 Javascript
JavaScript实现隐藏省略文字效果的方法
2017/04/27 Javascript
Angular.js中window.onload(),$(document).ready()的写法浅析
2017/09/28 Javascript
Javascript实现动态时钟效果
2018/11/17 Javascript
详解Vue webapp项目通过HBulider打包原生APP(vue+webpack+HBulider)
2019/02/02 Javascript
详解vue几种主动刷新的方法总结
2019/02/19 Javascript
vue微信分享的实现(在当前页面分享其他页面)
2019/04/16 Javascript
深入解析koa之异步回调处理
2019/06/17 Javascript
Vue 实现登录界面验证码功能
2020/01/03 Javascript
在Python的web框架中中编写日志列表的教程
2015/04/30 Python
在Django的上下文中设置变量的方法
2015/07/20 Python
使用Python从有道词典网页获取单词翻译
2016/07/03 Python
Python读取数据集并消除数据中的空行方法
2018/07/12 Python
Python  unittest单元测试框架的使用
2018/09/08 Python
python实现转圈打印矩阵
2019/03/02 Python
python seaborn heatmap可视化相关性矩阵实例
2020/06/03 Python
python3访问字典里的值实例方法
2020/11/18 Python
Python APScheduler执行使用方法详解
2020/12/10 Python
详解appium自动化测试工具(monitor、uiautomatorviewer)
2021/01/27 Python
整理HTML5中表单的常用属性及新属性
2016/02/19 HTML / CSS
写一个在SQL Server创建表的SQL语句
2012/03/10 面试题
经典的班主任推荐信
2013/10/28 职场文书
交通安全演讲稿
2014/01/07 职场文书
会计出纳员的自我评价
2014/01/15 职场文书
申请任职学生会干部自荐书范文
2014/02/13 职场文书
保安公司服务承诺书
2014/05/28 职场文书
班主任工作实习计划
2015/01/16 职场文书
Python 中random 库的详细使用
2021/06/03 Python
浅谈sql_@SelectProvider及使用注意说明
2021/08/04 Java/Android