discuz如何處理這種情況呢,關於資料表資料提取

來源:互聯網
上載者:User
需求是這樣的:
我要在門戶的首頁把頻道欄目迴圈出來,所以要在index.htm頁面中做一個loop迴圈,即然是loop,那麼肯定要給它一個數組,即存放頻道欄目的資料表 portal_category,
我的疑惑有兩點,
一, 如果要用系統內建的定義資料表的方法,那麼,我怎麼知道這個資料表定義在哪個數組中呢?
二,如果我自己定義,那麼這個數組sql出來的語句我要寫在哪裡呢?


回複討論(解決方案)

開啟:\source\module\portal\portal_index.php
在include_once template上面添加:
$res=DB::fetch_all("SELECT * FROM %t",array('portal_category'));
echo "

";  
print_r($res);
echo "
";

訪問門戶首頁試試

開啟:\source\module\portal\portal_index.php
在include_once template上面添加:
$res=DB::fetch_all("SELECT * FROM %t",array('portal_category'));
echo "

";   
print_r($res);
echo "
";

訪問門戶首頁試試



哦,我忘說了,我用的是discuz!x3.2版本,裡面沒有 include_once template
我把你說的代碼加在紅色位置處了,不知行嗎,我列印的結果是可以的,但不知這麼寫 規範嗎?
/-------------------------------------------------------------------------------------------


/**
* [Discuz!] (C)2001-2099 Comsenz Inc.
* This is NOT a freeware, use is subject to license terms
*
* $Id: portal.php 33234 2013-05-08 04:13:19Z andyzheng $
*/

define('APPTYPEID', 4);
define('CURSCRIPT', 'portal');

require './source/class/class_core.php';
$discuz = C::app();

$cachelist = array('userapp', 'portalcategory', 'diytemplatenameportal');
$discuz->cachelist = $cachelist;
$discuz->init();

require DISCUZ_ROOT.'./source/function/function_home.php';
require DISCUZ_ROOT.'./source/function/function_portal.php';

$res=DB::fetch_all("SELECT * FROM %t",array('portal_category'));
echo "
";  
print_r($res);
echo "
";

if(empty($_GET['mod']) || !in_array($_GET['mod'], array('list', 'view', 'comment', 'portalcp', 'topic', 'attachment', 'rss', 'block'))) $_GET['mod'] = 'index';


define('CURMODULE', $_GET['mod']);
runhooks();

$navtitle = str_replace('{bbname}', $_G['setting']['bbname'], $_G['setting']['seotitle']['portal']);
$_G['disabledwidthauto'] = 1;


require_once libfile('portal/'.$_GET['mod'], 'module');
?>

你開啟的檔案錯了,你那個是門戶的入口檔案
你要寫在\source\module\portal\portal_index.php檔案裡
echo "

";  
print_r($res);
echo "
";
這三句只是為了顯示出來給你看,你在前台的模版檔案中要loop的數組就是$res,數組名字自己換
  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.