Maison > développement back-end > tutoriel php > Explication détaillée des problèmes de développement de la fonction d'annonce du centre commercial thinkPHP

Explication détaillée des problèmes de développement de la fonction d'annonce du centre commercial thinkPHP

墨辰丷
Libérer: 2023-03-28 12:22:01
original
1607 Les gens l'ont consulté

Cet article présente principalement les problèmes de développement de la fonction d'annonce de centre commercial thinkPHP et analyse les compétences liées à l'interaction ajax et au fonctionnement de la base de données impliquées dans la mise en œuvre de la fonction d'annonce de centre commercial basée sur thinkPHP sous forme d'exemples. Les amis dans le besoin peuvent s'y référer. 🎜>

L'effet est le suivant


1. Fixé sur la tête

position: fixed;
z-index: 999;
top: 0;
opacity:1;
Copier après la connexion

2.ajax Traitement des données 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;
}
Copier après la connexion

Après avoir défini dataType : 'json', les données json peuvent être traitées directement via json.

3. Enfin chargée, la page est plus belle.

$(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(); // 轮播
  }
});
Copier après la connexion

4. Obtenez le traitement thinkphp de l'instruction SQL

// 获取公告
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;);
      }
    }
}
Copier après la connexion

$where[&#39;endtime&#39;] = array(array(&#39;eq&#39;,0),array(&#39;gt&#39;,time()), &#39;or&#39;) ;
Copier après la connexion

gère habilement cette relation logique.

Ce qui précède représente l’intégralité du contenu de cet article, j’espère qu’il sera utile à l’étude de chacun.


Recommandations associées :

Explication détaillée de l'exemple de fonction de détection d'expiration de connexion en php

phpExplication détaillée des exemples d'encodage et de décodage base64

phpComment se connecter à base de données mysql

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal