Discuz數據獲取操作
在discuz模板下的plugin文件夾,新添加的插件都寫在該文件夾下
e.g. 工程supermarket
supermarket / source / plugin / goods
其中,goods插件下含有以下一部分文件夾及文件:
table(數據表操作類)
template(樣式文件)
【實現商品選擇的功能】
plugin / goods / template / goods_select.htm
<div class=”select”>
<select>
{loop $category $key $val}
<option value=””>$val[name]</option>
{/loop}
</select>
</div>
plugin / goods / table / table_goods_category.php
class table_goods_category extends discuz_table{
public function __construct(){
$this->table = ‘goods_category’; //goods_category爲數據表
}
public function fetch_all_category(){
return DB::fetch_all(“select * from %t where goods_id = %d”,array($this->table, $goods_id));
//sql語句中的%t 表示數據表(goods_category),%d表示整數(goods_id)
}
}
plugin / goods / goods_select.inc.php
$category = C::t(‘#goods#goods_category’)->fetch_all_category();
//C::t()裏面爲數據表,’#goods#goods_category’表示在goods插件下的goods_category表
以上使用了discuz的C對象對數據庫進行查詢操作,基本的使用方法是 C::t($tableName)->fetch_all($id)