DEDECMS自定義模組之文章上下篇
2、$typeid文章所屬欄目ID
3、$act當前文章所屬欄目的標識
4、$ksOne文章一級欄目名稱
5、$ksTwo文章二級欄目名稱
/*********************獲取當前文章欄目ID**************************/
$ksxxListArr=array("experience" , "outline" , "quesBase" , "quesPr" , "pracBase" , "pracPr");//定義欄目列表 if((!isset($_GET['act'])) || ($_GET['act']=="") || (!in_array($_GET['act'], $ksxxListArr))){
ShowMsg('非法引數,請勿提交!', '-1');
exit();
}else{
$act = $_GET['act'];
}
$ksxxArr = array( //定義欄目列表一級和二級名稱和欄目ID
'experience' => array("複習指導","考試經驗",236),
'outline' => array("複習指導","考試大綱",235),
'quesBase' => array("試題中心","經濟學基礎",239),
'quesPr' => array("試題中心","初級會計實務",237),
'pracBase' => array("每日一練","經濟學基礎",240),
'pracPr' => array("每日一練","初級會計實務",238)
);
foreach($ksxxArr as $ksxxkey => $ksxxval){
if($ksxxkey==$act){
$ksOne=$ksxxval[0];
$ksTwo=$ksxxval[1];
$typeid=$ksxxval[2];
}
}
if(!isset($_GET['id']) || empty($_GET['id'])){
ShowMsg('找不到頁面!', '-1');
exit();
}
$aid=$_GET['id'];
$aid=intval($aid);
//獲取當前文章
$arc= $dsql->GetOne( "select a.title , a.id , a.pubdate , a.source , b.body from `#@__archives` a LEFT JOIN
/****************定義方法獲取上下篇***************************/
$PreNext= array();
if(count($PreNext)<2)
{
$preR = $dsql->GetOne("Select id From `#@__arctiny` where id<'{$aid}' And arcrank>-1 And typeid='{$typeid}' order by id desc");
$nextR = $dsql->GetOne("Select id From `#@__arctiny` where id>'{$aid}' And arcrank>-1 And typeid='{$typeid}' order by id asc");
$pre = (is_array($preR) ? " where id={$preR['id']} " : ' where 1>2 ');
$next = (is_array($nextR) ? " where id={$nextR['id']} " : ' where 1>2 ');
$query = "Select id , title from `#@__archives` ";
$preRow = $dsql->GetOne($query.$pre);
$nextRow = $dsql->GetOne($query.$next);
if(is_array($preRow))
{
$PreNext['pre'] = "上一篇:<a href='article.php?act=".$act."&id=".$preRow['id']."'>{$preRow['title']}</a> ";
}
else
{
$PreNext['pre'] = "上一篇:沒有了!";
}
if(is_array($nextRow))
{
$PreNext['next'] = "下一篇:<a href='article.php?act=".$act."&id=".$nextRow['id']."'>{$nextRow['title']}</a> ";
}
else
{
$PreNext['next'] = "下一篇:沒有了!";
}
}
/****************定義方法獲取上下篇***************************/ if($arc['id'] !=""){
include(dirname(__FILE__).'/templets/article.htm');
}else{
ShowMsg('非法請求,請勿修改引數!', '/');
exit();
}
注意:上下篇呼叫參考如下:
<!--上下篇-->
<div class="prenext">
<ul>
<li><?php echo $PreNext['pre']; ?></li>
<li><?php echo $PreNext['next']; ?></li>
</ul>
</div>
<!--上下篇-->
相關推薦
DEDECMS自定義模組之文章上下篇
1、$aid文章ID 2、$typeid文章所屬欄目ID 3、$act當前文章所屬欄目的標識 4、$ksOne文章一級欄目名稱 5、$ksTwo文章二級欄目名稱 /*****************
dedecms自定義模型之獨立模型在首頁、列表頁、內容調用內容
兩個 定義 blog typeid 註意 lists lis curl lds dedecms關於自定義模型(獨立模型)的首頁、列表頁、內容怎麽調用?在後臺自定義模型(獨立模型)的建立及自定義字段的添加比較簡單,需要註意兩點: (1)如果某個字段需要在前臺列表頁顯示,則在前
自定義Behavior之ToolBar上滑TabLayout顏色漸變
本篇文章介紹使用CoordinatorLayout的自定義Behavior來實現如下的效果 分析本例效果 首先我們來分析下整個例子需要實現哪些效果: ToolBar的上滑和下滑 TabLayout跟隨ToolBar上移和下移 TabLayout顏
少說話多寫程式碼之Python學習056——標準模組(自定義模組)
我們前面知道了如何匯入外部模組,比如常用的math模組, import math print(math.sin(90)) 輸出 0.8939966636005579 我們也可以自己定義一個模組,比如我的程式都在這個目錄下, 圖1 然後在當前目錄下,再建立一個MyFirstLi
萬惡之源 - Python 自定義模組
自定義模組 我們今天來學習一下自定義模組(也就是私人訂製),我們要自定義模組,首先就要知道什麼是模組啊 一個函式封裝一個功能,比如現在有一個軟體,不可能將所有程式都寫入一個檔案,所以咱們應該分檔案,組織結構要好,程式碼不冗餘,所以要分檔案,但是分檔案,分了5個檔案,每個檔案裡面可能都有相同的功能(函式),
python 之 自定義模組的使用
python 內建的模組有很多。當然我們也可以自定義模組然後進行使用 第一步建立一個自定義模組 檔名為 mk.py def add(x,y): return x+y x = 1002 def home(x,y): return x-y 第一種引用 imp
dedecms 自定義模型中圖片欄位無法選擇及無法上傳問題的解決方案
1. 自定義欄位圖片上傳無法點選選擇的問題解決方法(include/uploadsafe.inc.php) 541行:onClick=\"SelectImage('form1.$fieldname','big')\" />\r\n"; 更改為:onClick=\"Se
從原理上教你如何刪除織夢dedecms自定義欄位
由於dedecms後臺沒有提供刪除自定義欄位的方法,我們只能自己手動操作刪除,下面的內容是刪除的方法和原理。 一、增加一個自定義欄位,用於下面的示例中講解刪除。 “核心-頻道模型-內容模型管理”,選擇”普通文章-欄位管理-新增新欄位“ 注意紅色框選的地方,後面的講解會說到
Python基礎之匯入Python模組+匯入第三方模組+自定義模組
Python的模組匯入 Imporp random 匯入模組 Form random import randrange,random 詳細匯入 Import sys,os 多個匯入 匯入第三方模組 使用pip命令安裝 Pip install 模組名 安裝 P
Vue之使用 vue-quill-editor_自定義toolbar_修改圖片上傳方式
1.安裝npm install vue-quill-editor --save 2.引入import { quillEditor } from 'vue-quill-editor' components: { quillEditor }, 3.使用<quill-editor v-model="
HTML5自定義屬性之data-
表現 logs nbsp null dex att html5 mov 對象 HTML5 增加了一項新功能是 自定義數據屬性 ,也就是 data-* 自定義屬性。在HTML5中我們可以使用以 data- 為前綴來設置我們需要的自定義屬性,來進行一些數據的存放。當然高級瀏覽
自定義驗證之這能輸入數字(包括小數 負數 )
key 多個 class script 數字 是否 pre blur 如果 <script type="text/javascript"> function onlyNumber(obj){ //得到第一個字符是否為負號
自定義input文件上傳 file的提示文字及樣式
fun load 分享圖片 png type click asc pla 技術 簡單記錄一下 效果圖: 代碼: 1 <input class="aload" type=‘button‘ value=‘上傳附件‘ onClick=‘javascript
自定義input文件上傳樣式
直接 bmi hidden action round phi 設置 掌握 隱藏 文件上傳是我們經常會用到的功能,但是原生的input樣式太醜了,能不能自定義一個input文件上傳樣式呢? 我這裏寫了兩種方法,form表單提交跟ajax異步提交都沒有問題,自動上傳或者點擊
OC 自定義tabBar實現tabBar上帶有圓形按鈕
1.建立繼承自UITabBar控制元件的類CustomTabBar,程式碼如下: #import "CustomTabBar.h" @interface CustomTabBar () @property (nonatomic, strong)UIButton *roundButton;
自定義View之Rect的使用與理解
此篇為我的第一篇部落格,藉此平臺讓更多的人知道和掌握更多android的知識,希望能越來越優秀.高手過招,不只是會用,更多的是理解它的原理,能舉一反三,與已知知識對比學習,方便記憶與理解,下面,我們直接進入正題.我的文章會有一個很明顯的特徵,就是中學時期老師所講的"3W"原則,what(是什麼),h
[uwp]自定義Behavior之隨意拖動
原文: [uwp]自定義Behavior之隨意拖動 由於最近有需求,所以自定義了一個隨意拖動元素的Behavior. 當然在使用這個自定義的Behavior時,有個小假設:拖動元素必須是Canvas容器的子元素。 實現原理比較簡單低效: 監聽被拖動元素的PointerMoved事件,當
微信小程式 自定義元件之《轉盤》
微信小程式支援簡潔的元件化程式設計 開發者可以將頁面內的功能模組抽象成自定義元件,以便在不同的頁面中重複使用;也可以將複雜的頁面拆分成多個低耦合的模組,有助於程式碼維護。自定義元件在使用時與基礎元件非常相似。 這篇博文主要就是分享個自己實際專案中用到的 轉盤自定義元件 專案
自定義模組匯入的實用方法
00一個大坑這個問題是我在使用pycharm中的copy path獲取當前檔案的絕對路徑時遇到。 結果獲取到的路徑如下!!!E:\text1\day24(模組)\模組匯入練習1\當前要執行的檔案.py一開始沒有發現錯在哪裡,直到使用print(__file__) 發現真正的路徑是:E:/text1/d
自定義View之指南針(反編譯別人的程式碼實現)
一、說明 偶爾點開魅族手機內建的工具箱應用,發現其指南針做的還不錯,就想模擬做一個類似的效果,在這裡我們不準備自己從頭開始編寫程式碼,而是採用一點黑科技,首先,我們從魅族系統中匯出工具箱應用的apk,然後反編譯apk,結合