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)