读书人

paip.discuz x2.5 用户及积分账户的接

发布时间: 2012-08-14 10:39:57 作者: rapoo

paip.discuz x2.5 用户及积分账户的接口attilax总结

paip.discuz x2.5 用户及积分账户的接口attilax总结

今天新建立了一个/unaapi.php,准备利用它作接口API,供我的彩票系统调用。。查了不少网络

,DISCUZ的文档做的真烂,有些方法实在不好找,也不想去一点点跟踪调试。。就自己重写了。

1. 系统方法引用


define ( 'APPTYPEID', 5 ); // 必须的,你懂的
define ( 'CURSCRIPT', 'userapp' ); // 必须的,你懂的
require_once './source/class/class_core.php'; // 必须的,你懂的
$discuz = & discuz_core::instance (); // 必须的,你懂的
$discuz->cachelist = $cachelist; // 必须的,你懂的
$discuz->init (); // 必须的,你懂的


引用这几行代码是为了获取当前登录用户 username:".$_G['username']

2. getUidByUname ,找遍DISCUZ,没发现通过用户名找UID这个方法,只好自己写了...因为是

通过远程API调用取UID,所以无法用$_G['uid']这个捷径。。

function getUidByUname($uname) {
inidb();
$sql="Select * FROM pre_common_member where username='".

$uname."'" ;
$result=mysql_query($sql);
mysql_num_rows($result);
$rowx=mysql_fetch_array($result);
$uid= $rowx['uid'];
return $uid;
}

3. 连接数据库..
require './config/config_global.php';


function inidb()
{
global $_config;
mysql_connect($_config['db']['1']['dbhost'],$_config['db']['1']['dbuser'],

$_config['db']['1']['dbpw'] = '');
mysql_select_db( $_config['db']['1']['dbname']);
mysql_query("set names 'GBK'") ;



}

4. 取金钱余额(积分系统中的金钱)。。。


//$sql="Select * FROM pre_common_member_count where

uid= ".$uid ;
$row2 = C::t('common_member_count')->fetch($uid);


$money = $row2['extcredits2'];

5.减少金钱

if($_REQUEST["method"]=="AccMinus")
{ $uname=$_REQUEST["uname"];
$minus=$_REQUEST["money"];
$uid=getUidByUname ( $uname );

$row2 = C::t('common_member_count')->fetch($uid);
$moneyOri = $row2['extcredits2'];
$newMoney=$moneyOri-$minus;
C::t('common_member_count')->update($uid, array

('extcredits2' =>$newMoney ));

global $money;
$money=$newMoney;
}


6.增加金钱.

读书人网 >网络基础

热点推荐