Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[疑难] 关于奴隶插件积分现金互换操作

[复制链接]
MBirds 发表于 2008-10-13 13:19:28 | 显示全部楼层 |阅读模式
本帖最后由 MBirds 于 2008-10-14 13:15 编辑

本人主要是用于学习,商业使用请使用原版
以下代码可能存在BUG问题 希望能够跟大家一起学习交流解决


解决方法:

在com_slave.php加上:
//-------------------积分兑换设置----------------
if($op=="credit"){
$sidebar = 1;
if($_POST[submitcredit]){
$credit = $_POST[credit];
        $credits = $credit*50;
        if ( !empty( $credit ) and ( $credit > 0 ) and ( $credits <= $space[credit] ) )
        {
//增加金钱
$query = "UPDATE ".tname('com_slave_main')." SET cash = cash+".$credits." WHERE uid=".$space[uid];
$_SGLOBAL['db']->query($query);
//减少积分
        $query = "UPDATE ".tname('space')." SET credit = credit-".$credit." where uid =".$space[uid];
$_SGLOBAL['db']->query($query);
showmessage(comlang('credit_successful'), "component.php?com=slave&op=credit", 1);
}
else if ( $credits > $space[credit] )
{
showmessage('credits_balance_insufficient');
}
    else  
    {
     showmessage('showcredit_error');
    }
}
$user = comSlaveGetUserInfo($space[uid]);
}











修改com_slave.htm文件:
<div class="c_header a_header">
<a href="?com=slave"><img src="<!--{avatar($space[uid],small)}-->" alt="$space[username]" class="avatar" /></a>
<h1>$SConfig[gamename]</h1>
<span class="spacelink">我的现金:$SConfig[dollar_sign] $myinfo[cash]    拥有积分:$space[credit] 个积分</span>
</div>

<div class="tabs_header">
<a href="?com=invite&app=slave" class="t_combutton">邀请好友(可获得 $SConfig[dollar_sign] $invite_amount)</a>
        <ul class="tabs">
                <li $active[main]><a href="?com=slave">首页</a></li>
<!--{if $op=="action"}-->
<li class="active"><a href="?com=slave&op=action&uid=$uid">任务</a></li>
<!--{/if}-->
                <li $active[market]><a href="?com=slave&op=market">奴隶市场</a></li>
                <li $active[rank]><a href="?com=slave&op=rank">排行榜</a></li>
                <li $active[setup]><a href="?com=slave&op=setup">游戏设置</a></li>
                <li $active[credit]><a href="?com=slave&op=credit">积分兑换</a></li>                <li $active[help]><a href="?com=slave&op=help">帮助</a></li>
        </ul>
</div>


<!--{if $op=="credit"}-->
<div class="slave_block" style="padding:10px 20px 30px 20px;">

<div class=c_form>
<table cellspacing="0" cellpadding="0" class="formtable">

<tr><th>拥有现金:</th><td><span class="money">$SConfig[dollar_sign] $myinfo[cash]</span></td></tr>
<tr><th>拥有积分:</th><td><span class="num">$space[credit]</span></td></tr>

<tr><th>兑换规则:</th><td>兑换 $SConfig[dollar_sign]500 ,需要积分数:10</td></tr>
<form action="component.php?com=slave&op=credit" method="POST">
<tr><th>兑换积分:</th><td><input type="text" name="credit" value="1" size="5"> </td></tr>
<tr><th> </th><td><input type=submit name="submitcredit" value="兑换" class="submit">
<input type=button name="submit" value="取消" class="submit" onclick="javascript:history.back()">
</td></tr>
</table>
<br>
<b>积分交易一旦提交不可恢复,请确定无误后再进行操作,积分减少会影响到您的会员级别</b>

        </div>
</div>
<!--{/if}-->
*红色表示要加的内容

以下是第三张效果图片显示要修改的代码:
在com_slave.php加上:
//-------------------积分兑换----------------
if($op=="credit"){

$sidebar = 1; //打开右侧栏

if($_POST[submitcredit]){
$code=$_POST['code']; //买入或卖出
$credit=intval(trim($_POST['credit'])); //用户输入数值
    $credits = $credit*50;
$creditss = $credit/50;

if (!$credit||empty($_POST['credit'])|| $_POST['credit']<1 ||strlen($_POST['credit'])>8) showmessage(_comlang($credit_err));

if ($code=='xianjin') {
//增加金钱
$query = "UPDATE ".tname('com_slave_main')." SET cash = cash+".$credits." WHERE uid=".$space[uid];
$_SGLOBAL['db']->query($query);
//减少积分
$query = "UPDATE ".tname('space')." SET credit = credit-".$credit." where uid =".$space[uid];
$_SGLOBAL['db']->query($query);
showmessage(comlang('xianjin_successful'), "component.php?com=slave&op=credit", 3);

}elseif($code=='jifen') {
//减少金钱
$query = "UPDATE ".tname('com_slave_main')." SET cash = cash-".$credit." WHERE uid=".$space[uid];
$_SGLOBAL['db']->query($query);
//增加积分
        $query = "UPDATE ".tname('space')." SET credit = credit+".$creditss." where uid =".$space[uid];
$_SGLOBAL['db']->query($query);
showmessage(comlang('jifen_successful'), "component.php?com=slave&op=credit",3);
}
}
}

修改com_slave.htm文件:
<div class="c_header a_header">
<a href="?com=slave"><img src="<!--{avatar($space[uid],small)}-->" alt="$space[username]" class="avatar" /></a>
<h1>$SConfig[gamename]</h1>
<span class="spacelink">我的现金:$SConfig[dollar_sign] $myinfo[cash]    拥有积分:$space[credit] 个积分</span>
</div>

<div class="tabs_header">
<a href="?com=invite&app=slave" class="t_combutton">邀请好友(可获得 $SConfig[dollar_sign] $invite_amount)</a>
        <ul class="tabs">
                <li $active[main]><a href="?com=slave">首页</a></li>
<!--{if $op=="action"}-->
<li class="active"><a href="?com=slave&op=action&uid=$uid">任务</a></li>
<!--{/if}-->
                <li $active[market]><a href="?com=slave&op=market">奴隶市场</a></li>
                <li $active[rank]><a href="?com=slave&op=rank">排行榜</a></li>
                <li $active[setup]><a href="?com=slave&op=setup">游戏设置</a></li>
                <li $active[credit]><a href="?com=slave&op=credit">积分兑换</a></li>                <li $active[help]><a href="?com=slave&op=help">帮助</a></li>
        </ul>
</div>

<!--{if $op=="credit"}-->
<div class="slave_block" style="padding:10px 20px 30px 20px;">

<div class=c_form>
<table cellspacing="0" cellpadding="0" class="formtable">

<tr><th>拥有现金:</th><td><span class="money">$SConfig[dollar_sign] $myinfo[cash]</span></td></tr>
<tr><th>拥有积分:</th><td><span class="num">$space[credit]</span></td></tr>

<tr><th>兑换规则:</th><td>1积分=50现金/50现金=1积分</td></tr>
<form action="component.php?com=slave&op=credit" method="POST">
<tr><th>输入数量:</th><td><input type="text" name="credit" value="1" size="10"> </td></tr>
<tr><th>兑换类型:</th><td><input name="code" type="radio" value="xianjin" checked>现金 &nbsp;&nbsp;<input name="code" type="radio" value="jifen">积分 </td></tr>
<tr><th>&nbsp;</th><td><input type=submit name="submitcredit" value="兑换" class="submit">
<input type=button name="submit" value="取消" class="submit" onclick="javascript:history.back()">
</td></tr>
        </form>
</table>
<br>
<b>积分交易一旦提交不可恢复,请确定无误后再进行操作,积分减少会影响到您的会员级别</b>

        </div>
</div>
<!--{/if}-->


另外在components/slave/language.php的
'license_error' => '本插件只授权于一个域名使用,如有任何问题请联系插件作者,谢谢!',
后面加上:
'credit_err' => '请输入兑换数量',
'credit_round_err' => '请输入\\1 的整倍数',
'xianjin_successful' => '兑换现金成功!',
'jifen_successful' => '兑换积分成功!',


*红色表示要修改添加部分
效果图:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

评分

1

查看全部评分

kevke 发表于 2008-10-13 13:22:13 | 显示全部楼层
兑换什么啊,直接和站内的积分挂钩不就好了
回复

使用道具 举报

scckfzx 发表于 2008-10-13 13:22:30 | 显示全部楼层
类似这样的代码都是错的。$_POST[submitcredit]
回复

使用道具 举报

 楼主| MBirds 发表于 2008-10-13 13:23:29 | 显示全部楼层
回复 3# scckfzx 的帖子
为什么这样说呢 指点下
回复

使用道具 举报

 楼主| MBirds 发表于 2008-10-13 13:23:52 | 显示全部楼层
类似这样的代码都是错的。$_POST[submitcredit]
scckfzx 发表于 2008-10-13 13:22

为什么这样说呢 指点下
回复

使用道具 举报

 楼主| MBirds 发表于 2008-10-13 13:32:34 | 显示全部楼层
怎么没有支持 快沉了
回复

使用道具 举报

scckfzx 发表于 2008-10-13 13:33:23 | 显示全部楼层
应该是$_POST['submitcredit'].
控件的名称需要用单引号括起来。不为什么,这是基本的语法。
回复

使用道具 举报

luring 发表于 2008-10-13 13:44:25 | 显示全部楼层
回复

使用道具 举报

1753103 发表于 2008-10-13 13:50:05 | 显示全部楼层
楼主积分兑换  写出来没!
回复

使用道具 举报

 楼主| MBirds 发表于 2008-10-13 13:53:00 | 显示全部楼层
搞定了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-11-19 10:45 , Processed in 0.137269 second(s), 7 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表