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数据库操作方法(MYSQL版)
Jun 08 PHP
PHP面向对象学习笔记之二 生成对象的设计模式
Oct 06 PHP
PHP采用XML-RPC构造Web Service实例教程
Jul 16 PHP
PHP中使用Imagick实现各种图片效果实例
Jan 21 PHP
PHP实现冒泡排序的简单实例
May 26 PHP
PHP实现多关键字加亮功能
Oct 21 PHP
php 防止表单重复提交两种实现方法
Nov 03 PHP
php自定义扩展名获取函数示例
Dec 12 PHP
PHP空值检测函数与方法汇总
Nov 19 PHP
thinkPHP框架实现多表查询的方法
Jun 14 PHP
php的扩展写法总结
May 14 PHP
PHP生成图表pChart的示例解析
Jul 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
攻克CakePHP系列二 表单数据显示
2008/10/22 PHP
ThinkPHP入库出现两次反斜线转义及数据库类转义的解决方法
2014/11/04 PHP
php基于闭包实现函数的自调用(递归)实例分析
2016/11/11 PHP
利用JQuery为搜索栏增加tag提示
2009/06/22 Javascript
web的各种前端打印方法之jquery打印插件PrintArea实现网页打印
2013/01/09 Javascript
使用GruntJS构建Web程序之构建篇
2014/06/04 Javascript
在一个页面重复使用一个js函数的方法详解
2016/12/26 Javascript
AngularJS点击添加样式、点击变色设置的实例代码
2017/07/27 Javascript
Vue2 模板template的四种写法总结
2018/02/23 Javascript
vue src动态加载请求获取图片的方法
2018/10/17 Javascript
深入理解javascript prototype的相关知识
2019/09/19 Javascript
使用layer模态框给新页面传值的方法
2019/09/27 Javascript
vue-cli+webpack项目打包到服务器后,ttf字体找不到的解决操作
2020/08/28 Javascript
js面向对象封装级联下拉菜单列表的实现步骤
2021/02/08 Javascript
python通过正则查找微博@(at)用户的方法
2015/03/13 Python
日常整理python执行系统命令的常见方法(全)
2015/10/22 Python
python 寻找list中最大元素对应的索引方法
2018/06/28 Python
python同步两个文件夹下的内容
2019/08/29 Python
AUC计算方法与Python实现代码
2020/02/28 Python
python 函数嵌套及多函数共同运行知识点讲解
2020/03/03 Python
Python参数传递对象的引用原理解析
2020/05/22 Python
利用Python的folium包绘制城市道路图的实现示例
2020/08/24 Python
CSS3实现内凹圆角的实例代码
2017/05/04 HTML / CSS
HTML5如何实现元素拖拽
2016/03/11 HTML / CSS
英国床和浴室商场:Bed & Bath Emporium
2018/05/20 全球购物
校园招聘策划书
2014/01/09 职场文书
建筑工程毕业生自我鉴定
2014/01/14 职场文书
商业项目策划方案
2014/06/05 职场文书
施工安全标语
2014/06/07 职场文书
市场营销毕业求职信
2014/08/07 职场文书
平面设计师岗位职责
2014/09/18 职场文书
期末个人总结范文
2015/02/13 职场文书
2015年食堂工作总结报告
2015/04/23 职场文书
老人节主持词
2015/07/04 职场文书
推广普通话的宣传语
2015/07/13 职场文书
践行三严三实心得体会(2016推荐篇)
2016/01/06 职场文书