精品国产免费观看久久久_久久天天躁狠狠躁夜夜爽_无码人妻少妇久久中文字幕_狠狠做深爱婷婷久久综合一区

互聯網知識

精準傳達 ? 價值共享

洞悉互聯網前沿資訊,探尋網站營銷規律

查看其它板塊

織夢DedeCms用SQL語句調用數據庫任意內容方法

作者:狐靈科技 | 2019-12-29 17:05 |點擊:

織夢DedeCms給我們提供了大量調用標簽,供我們調用各種數據,但提供再多的標簽,也有滿足不了我們的時候,這時我們可以用SQL語句,靈活調用我們需要的內容。

如何任意調用數據庫中的內容呢?

 

先舉個例子:

{dede:sql sql="select body from dede_addonarticle where aid=2"}
[field:body/]
{/dede:sql}

相信熟悉SQL語言的朋友很容易看懂這句含義。意思其實就是查詢數據表dede_addonarticle中的body字段內容,條件是aid=2,[field:body /]表示輸出body字段的內容。

 

又如這句SQL標簽樣例代碼:

{dede:sql sql="select content from dede_arctype where id=2"}
[field:content function=cn_substr(Html2Text(@me),600)/]
{/dede:sql}

根據上面的例子,應該很好理解了,這樣語句輸出的結果就是dede_arctype表中id=2的content字段的前200個中文。

這里主要說明一下cn_substr表示返回字符串的一部分,600表示截取600個字節(utf-8編碼中一個中文占用3個字節,gbk編碼中一個中文占用2個字節)。Html2Text參數代表把含有HTML的字符過濾掉,只顯示文本。

 

其實除了上面的例子外,在Dede系統里面,我可以可以自由使用SQL語句來配合織夢標簽進行更多的個性化調用。他們的基本參照格式為:

{dede:sql sql="select 字段 From 表名稱 where 條件語句"}
[field:字段名/]
{/dede:sql}

 

由上面這種基本格式,我們就可以基本轉換出一條調用文檔列表的調用標簽了,比如我們先取出10條dede_archives數據表中的內容,示例代碼:

{dede:sql sql="select * From dede_archives limit 10"}
<a href="/plus/view.php?aid=[field:id/]">[field:title/]</a>
{/dede:sql}

 

如果我們想要從第3條開始調取,取出5條記錄又該怎么寫呢?mysql的語法中limit可以用來限制查詢結果的條數,示例:

{dede:sql sql="select * From dede_archives limit 2,5"}
<a href="/plus/view.php?aid=[field:id/]">[field:title/]</a>
{/dede:sql}

解析:因為索引是從0開始計數的,所以第3條記錄對應的索引就是2,limit 2,5可以理解為忽略2條,也就是從第3條開始,共取出5條記錄。

 

上面代碼中的文檔鏈接地址的是動態的,如果我們需要靜態地址,那么只需要進行一下轉換,這里我們只需要對[field:id/]進行一下轉換即可,轉換后的完整代碼為:

{dede:sql sql="SELECT * FROM dede_archives limit 10"}
<a href="[field:id runphp='yes']$id=@me;@me='';$url=GetOneArchive($id);@me=$url['arcurl'];[/field:id]" title="[field:title/]">[field:title function=cn_substr(@me,30,0)/]</a>
{/dede:sql}

   

 
如沒特殊注明,文章均為狐靈科技原創,轉載請注明?? "織夢DedeCms用SQL語句調用數據庫任意內容方法
多一份免費策劃方案,總有益處。

請直接添加技術總監微信聯系咨詢

網站設計 品牌營銷

多一份參考,總有益處

聯系狐靈科技,免費獲得專屬《策劃方案》及報價

咨詢相關問題或預約面談,可以通過以下方式與我們聯系

業務熱線:15082661954 / 大客戶專線:15523356218