- 主题:web下的表现值经验值显示问题
bbsqry.php
【 在 ukbee (小蜜蜂) 的大作中提到: 】
: 我在telnet下已经回复了表现值经验值的现实
: 在web下应该如何同步显示呀?具体是要改哪几个文件?
: 谢谢前辈们帮忙
: ...................
--
FROM 61.135.159.*
两种办法,一个是写C的函数在phpbbslib.c里面
不过我是写的php的函数,挺简单的
【 在 ukbee (小蜜蜂) 的大作中提到: 】
: 阿七哥哥,能不能告诉我bbsqry.php 里面表现值经验值应该怎么加呀?
--
FROM 61.135.159.*
...那这钱也太好赚了,挺简单的
就是根据stuff.c里面 countexp c_exp这几个函数变一下而已
按道理应该写到phpbbslib里去才符合道理..不过我不会:(
【 在 JulyClyde (七月) 的大作中提到: 】
: 这个属于付费项目
--
FROM 61.135.159.*
<?php
//add by bird for php自己计算经验值和表现值,from src/stuff.c countexp countperf定义
function cexp($exp)
{
$expbase = 0;
if ($exp == -9999)
return "没等级";
else if ($exp <= 100 + $expbase)
return "新手上路";
else if ($exp > 100 + $expbase && $exp <= 450 + $expbase)
return "一般站友";
else if ($exp > 450 + $expbase && $exp <= 850 + $expbase)
return "中级站友";
else if ($exp > 850 + $expbase && $exp <= 1500 + $expbase)
return "高级站友";
else if ($exp > 1500 + $expbase && $exp <= 2500 + $expbase)
return "老站友";
else if ($exp > 2500 + $expbase && $exp <= 3000 + $expbase)
return "长老级";
else if ($exp > 3000 + $expbase && $exp <= 5000 + $expbase)
return "本站元老";
else if ($exp > 5000 + $expbase && $exp <= 10000 + $expbase)
return "开国大老";
else return "超级大老";
}
function cperf($perf)
{
if ($perf == -9999)
return "没等级";
else if ($perf <= 5)
return "赶快加油";
else if ($perf > 5 && $perf <= 12)
return "努力中";
else if ($perf > 12 && $perf <= 35)
return "还不错";
else if ($perf > 35 && $perf <= 50)
return "很好";
else if ($perf > 50 && $perf <= 90)
return "优等生";
else if ($perf > 90 && $perf <= 140)
return "太优秀了";
else if ($perf > 140 && $perf <= 200)
return "本站支柱";
return "神~~";
}
//countexp countperf就没做函数了,直接算。
if($userid=="guest")
{
$exp=-9999;
$perf=-9999;
}
else
{
$time=time();
$exp=$lookupuser["numposts"] + $lookupuser["numlogins"] / 5 + ( $time - $lookupuser["firstlogin"] ) / 86400 + $lookupuser["stay"] / 3600;
$reg_days = ( $time - $lookupuser["firstlogin"] ) / 86400 + 1;
$perf = ( $lookupuser["numposts"] / $lookupuser["numlogins"] + $lookupuser["numlogins"] / $reg_days ) * 10;
$exp=intval($exp);
$perf=intval($perf);
}
?>
然后给相应的地方加
表现值:[<?php echo $perf;?>](<?php echo cperf($perf);?>) 经验值:[<?php echo $exp;?>](<?php echo cexp($exp);?>)
【 在 ukbee (小蜜蜂) 的大作中提到: 】
: stuff.c我已经修改过了
: telnet下都没有问题了,都可以显示经验值表现值文采值还有星座什么的
: 但是web下的显示不太会
: ...................
--
FROM 61.135.159.*