> 백엔드 개발 > PHP 튜토리얼 > thinkPHP 몰 공지 기능 개발 이슈에 대한 자세한 설명

thinkPHP 몰 공지 기능 개발 이슈에 대한 자세한 설명

墨辰丷
풀어 주다: 2023-03-28 12:22:01
원래의
1749명이 탐색했습니다.

본 글은 thinkPHP 쇼핑몰 공지 기능의 개발 이슈를 주로 소개하고, thinkPHP를 기반으로 쇼핑몰 공지 기능을 구현하는데 관련된 Ajax 상호 작용 및 데이터베이스 운영 관련 기술을 예시 형태로 분석하여 도움이 필요한 친구들이 참고할 수 있습니다. 효과는 다음과 같습니다


1. head에 설정

1

2

3

4

position: fixed;

z-index: 999;

top: 0;

opacity:1;

로그인 후 복사

2. Ajax는 json 데이터를 처리합니다

1

2

3

4

5

6

7

8

9

10

11

12

13

14

// 获取商城公告

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;

}

로그인 후 복사

json 데이터를 직접 처리할 수 있습니다. JSON을 통해.

3. 마침내 로드되면 페이지가 더 좋아 보입니다.

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

$(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();

    $(&#39;#notice ul&#39;).html(""+html);

    $(&#39;#notice&#39;).unslider(); // 轮播

  }

});

로그인 후 복사

4. SQL 문의 thinkphp 처리를 가져옵니다.

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

// 获取公告

function ajaxGetNotice() {

    if (IS_AJAX) {

      $this->mid;

      // 获取有效的,且结束时间大于当前时间的,或者日期等于0的公告

      $mallNoticeModel = M(&#39;Mall_notice&#39;);

      $where[&#39;mall_id&#39;] = $this->mid;

      $where[&#39;status&#39;] = 1;

      $where[&#39;endtime&#39;] = array(array(&#39;eq&#39;,0),array(&#39;gt&#39;,time()), &#39;or&#39;) ;

      //SELECT * from sh_mall_notice where mall_id = 9 and status = 1 and (endtime = 0 or endtime>1458354366);

      $notice = $mallNoticeModel->where($where)->order(&#39;sort desc&#39;)->select();

      if (!empty($notice)) {

        $this->ajaxReturn(array(&#39;status&#39;=>&#39;1&#39;,&#39;info&#39;=>$notice,&#39;msg&#39;=>"获取成功"),&#39;JSON&#39;);

      } else {

        $this->ajaxReturn(array(&#39;status&#39;=>&#39;2&#39;,&#39;info&#39;=>$notice,&#39;msg&#39;=>"公告不存在"),&#39;JSON&#39;);

      }

    }

}

로그인 후 복사

1

$where[&#39;endtime&#39;] = array(array(&#39;eq&#39;,0),array(&#39;gt&#39;,time()), &#39;or&#39;) ;

로그인 후 복사

은 이 논리적 관계를 영리하게 처리합니다.

위 내용은 이 글의 전체 내용입니다. 모든 분들의 공부에 도움이 되었으면 좋겠습니다.


관련 권장 사항:

php

php base64 인코딩 및 디코딩 예제

php 구현의 자세한 예 mysql 데이터베이스에 연결하는 방법

위 내용은 thinkPHP 몰 공지 기능 개발 이슈에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿