当前位置: 首页 > 编程笔记 >

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

公孙宇
2023-03-14
本文向大家介绍thinkPHP商城公告功能开发问题分析,包括了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相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》、《smarty模板入门基础教程》及《PHP模板技术总结》。

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

 类似资料:
  • 本文向大家介绍java网上商城开发之邮件发送功能(全),包括了java网上商城开发之邮件发送功能(全)的使用技巧和注意事项,需要的朋友参考一下 最近在学习网上商城时,接触到了一个邮件发送的功能。之前一直在使用邮箱进行发送邮件,但是其中的具体如何运转的却不知道是怎么回事。那么邮件发送究竟是怎么一回事呢? 邮件发送过程: 过程描述:首先是发送人将邮件通过客户端软件发送到特定的服务器上,然后通过电子邮件

  • 本文向大家介绍DWZ+ThinkPHP开发时遇到的问题分析,包括了DWZ+ThinkPHP开发时遇到的问题分析的使用技巧和注意事项,需要的朋友参考一下 本文实例分析了DWZ+ThinkPHP开发时遇到的问题。分享给大家供大家参考,具体如下: 目前我用的 thinkphp 版本是  3.1.3 J-UI  dwz 版本好像是 1.4 当我在项目开发的过程中 遇到了这么的一个问题, 当我我在后台执行a

  • 11.3 实现积分商城层 11.3.1 概述 积分商城是基于通用层之上进行开发,这样我们能减少很多重复的劳动,加快项目开发进度。 11.3.2 实现数据模型层 1、商品表,定义了如商品名称、简介、原需积分、现需积分等,其中是否发布表示只有发布(true)了的商品才会在前台删除,是否已删除表示不会物理删除,商品不应该物理删除,而是逻辑删除,版本属性用于防止并发更新。 package cn.javas

  • 本文向大家介绍ThinkPHP实现分页功能,包括了ThinkPHP实现分页功能的使用技巧和注意事项,需要的朋友参考一下 前几篇(上传,缩略图,验证码,自动验证表单)文章介绍的功能实现都是基于ThinkPHP框架封装好的类进行实现的,所以这次自己写一个分页类在框架中使用。 首先在根目录建一个Tools文件夹,在Tools文件夹下建Page.class.php类文件,这样以后自定义的工具类都可放在To

  • 本文向大家介绍php+redis实现商城秒杀功能,包括了php+redis实现商城秒杀功能的使用技巧和注意事项,需要的朋友参考一下 好久没来整理文章了,闲了没事写篇文章记录下php+redis实现商城秒杀功能。 1、安装redis,根据自己的php版本安装对应的redis扩展(此步骤简单的描述一下) 1.1.安装php_igbinary.dll,php_redis.dll扩展此处需要注意你的php

  • 商城项目前台结构: 本次项目共计四个应用:中web应用为项目前台: /myobject/ ├── manage.py ├── myobject/ 项目总目录 │ ├── ... 略 │ ├── common/ 公共应用目录 │ ├── ... 略 │ ├