<p id="l55vn"></p>
<nobr id="l55vn"></nobr>
<menuitem id="l55vn"><delect id="l55vn"><i id="l55vn"></i></delect></menuitem>

<p id="l55vn"></p>
      <nobr id="l55vn"><thead id="l55vn"><i id="l55vn"></i></thead></nobr>
      <b id="l55vn"></b>

            <menuitem id="l55vn"></menuitem>
              <nobr id="l55vn"><ruby id="l55vn"><i id="l55vn"></i></ruby></nobr>

              首頁 > 開發 > Php > 正文

              DEDECMS v5.6教程之實現分類信息的過濾

              2018-10-16 21:08:42
              字體:
              來源:轉載
              供稿:網友

              這些天在做一個物流系統的二次開發,主要還是模板設計。下面先介紹這個應用背景:我們有一個新建的頻道模型,其中有個字段是用的dede中的地區聯動表單――nativeplace?,F在如果客戶進來以后會發現有大量的信息,而客戶最關心的還是自己身邊的目標信息。因此就希望能通過地區選擇對此分類信息進行過濾。

              /

              效果如上圖所示,下面獻上相關代碼。首先在對應的List模板中添加以下內容,作用是生成圖中頂上的過濾選項:

              {dede:infoguide} <form name='infoguide' method='get' action='/plus/list.php'> <table> <tr> <td> [field:nativeplace /]</td> <td> [field:infotype /]</td> <td> <span class='infosearchtxt'>關鍵字:</span> <span><input type='text' name='keyword' value='' class="ipt-txt" /></span> <input type='submit' value='搜索信息' class="btn-2" style='cursor:pointer' /></td> <td><input type='button' value='發布信息' class="btn-2" style='cursor:pointer' /></td> </tr> </table> <input type='hidden' name='tid' value='[field:typeid /]' /> <input type='hidden' name='channelid' value='-8' /> </form> {/dede:infoguide}

                下面我只講地區過濾的實現,其它的請自己補充。找到/plus/list.php中:$t1 = ExecTime();改為以上代碼

                這里關鍵是定義了一個$mysql變量,勝于組織過濾的SQL語句。

                還是這個文件,接著往下找$lv = new ListView($tid);改為:$lv = new ListView($tid,$mySql);。

                找到include/arc.listview.class.php在:var $remoteDir;后面添加:var $mySql;

                將下面的//php5構造函數改為:function __construct($typeid,$mySql,$uppage=1);

                接著將在:global $dsql,$ftp;后面添加一行:$this->mySql = $mySql;

                接下來在這個文件中有一段官方注釋://普通情況先從arctiny表查出ID,然后按ID查詢(速度非??欤┱业酱颂?。下面有兩個else,我們要改的地方是第二個else中的query 。也就是整個文件中的第一個$t2 = ExecTime();之前的那個else中的Query.將其where后面的部分改為:where arc.id in($idstr) $mySql $ordersql “;

                至此,我們的分類信息過濾就已經可以用了。

              GET as $k => $v){ if($k=='nativeplace'){ $mySql = $mySql . ' and ' . $k . "='" . $v . "'"; } }

                 這里關鍵是定義了一個$mysql變量,勝于組織過濾的SQL語句。

                還是這個文件,接著往下找$lv = new ListView($tid);改為:$lv = new ListView($tid,$mySql);。

                找到include/arc.listview.class.php在:var $remoteDir;后面添加:var $mySql;

                將下面的//php5構造函數改為:function __construct($typeid,$mySql,$uppage=1);

                接著將在:global $dsql,$ftp;后面添加一行:$this->mySql = $mySql;

                接下來在這個文件中有一段官方注釋://普通情況先從arctiny表查出ID,然后按ID查詢(速度非??欤┱业酱颂?。下面有兩個else,我們要改的地方是第二個else中的query 。也就是整個文件中的第一個$t2 = ExecTime();之前的那個else中的Query.將其where后面的部分改為:where arc.id in($idstr) $mySql $ordersql “;

                至此,我們的分類信息過濾就已經可以用了。

              發表評論 共有條評論
              用戶名: 密碼:
              驗證碼: 匿名發表
              a级情欲片在线观看免费
              <p id="l55vn"></p>
              <nobr id="l55vn"></nobr>
              <menuitem id="l55vn"><delect id="l55vn"><i id="l55vn"></i></delect></menuitem>

              <p id="l55vn"></p>
                  <nobr id="l55vn"><thead id="l55vn"><i id="l55vn"></i></thead></nobr>
                  <b id="l55vn"></b>

                        <menuitem id="l55vn"></menuitem>
                          <nobr id="l55vn"><ruby id="l55vn"><i id="l55vn"></i></ruby></nobr>