本帖最后由 307119308 于 2011-7-8 23:32 编辑  
 
下面这段代码实现了引用当前在线用户,调用DISCUZ 2.0 的数据库查询方法进行数据库查询,获取当前用户信息 
 
<?php 
define('APPTYPEID', 5);//必须的,你懂的 
define('CURSCRIPT', 'userapp');//必须的,你懂的 
require_once './source/class/class_core.php';//必须的,你懂的 
$discuz = & discuz_core::instance();//必须的,你懂的 
$discuz->cachelist = $cachelist;//必须的,你懂的 
$discuz->init();//必须的,你懂的 
 
echo  "cur userid:".$_G['uid']."</br>";//获到当前用户ID 
echo  "cur username:".$_G['username']."</br>";//如上,你懂的 
$curuserid = $_G['uid'];//获到当前用户ID 
//使用数据库查询,调用discuz的数据库查询方法 
$cususerinfo = DB::fetch_first("SELECT * FROM ".DB::table('common_member')." WHERE uid='$curuserid'"); 
//查出当前用户的EMIAL 
echo "<br/>".$cususerinfo['email']; 
//要查其它的信息,进数据库会员表(不进就网上找个表介绍的看)先查出字段名,把emal换了就行了 
//查出所有用户,以注册日期排序 
$query = DB::query("SELECT * FROM ".DB::table('common_member')." order by regdate" ); 
echo "<br/>" ;//换一行先 
//开始输出 
while($row = DB::fetch($query)) { 
  echo  $row["uid"]."  " .$row["username"]."  ".$row["email"]."<br/>"; 
} 
//嗨,就知道这些了 
?> 
小弟初学,请高手指点啊,来自http://www.vduty.com 
以下为数据库操作函数,网摘的 
| 函数 | 功能  |  | DB::table($tablename)  | 获取正确带前缀的表名,[url=]转换数据库句柄[/url],  |  | DB::delete($tablename, 条件,条数限制) | 删除表中的数据  |  | DB::insert($tablename, 数据(数组),是否返回插入ID,是否是替换式,是否silent) | 插入数据操作  |  | DB::update($tablename, 数据(数组)条件) | 更新操作  |  | DB::fetch(查询后的资源) | 从结果集中取关联数组,注意如果结果中的两个或以上的列具有相同字段名,最后一列将优先。  |  | DB::fetch_first($sql) | 取查询的第一条数据fetch  |  | DB::result_first($sql) | 查询结果集的第一个字段值  |  | DB::query($sql) | 普通查询  |  | DB::num_rows(查询后的资源) | 获得记录集总条数  |  | DB::_execute(命令,参数) | 执行mysql类的命令  |  
  
注意:由于 X2.0 里增加了SQL的安全性检测。因此,如果你的SQL语句里包含以下开头的函数 load_file,hex,substring,if,ord,char。或者包含以下操作 intooutfile,intodumpfile,unionselect,(select')都将被拒绝执行。  
 
 |