function IsMember($name)
{
    global $cfg;
    $sql = "SELECT COUNT(*) FROM {$cfg['tb_members']} WHERE u_name='{$name}' LIMIT 1";
    $result = RenDB_Query($sql);
    if (RenDB_Num_Rows($result) != 0) {
        $row = RenDB_Fetch_Row($result);
        return $row[0];
    }
    return 0;
}
<?php

require_once './include/common.php';
include_once './include/txt_func.php';
SetNoUseCache();
if (!isset($name)) {
    ErrorBox($str['act_err']);
}
$sql = "SELECT * FROM {$cfg['tb_members']} WHERE u_name='{$name}' LIMIT 1";
$result = RenDB_Query($sql);
unset($mdata);
if (RenDB_Num_Rows($result) == 1) {
    $mdata = RenDB_Fetch_Array($result);
}
if (empty($mdata)) {
    MessageBox("{$name} 不是会员");
}
$baninfo = '';
if ($mdata['ban_before'] > $nowtime || $mdata['ban_before'] == -1) {
    MessageBox("{$name} 账号已被冻结");
}
switch ($mdata['u_gender']) {
    case 1:
        $m_gender = '男';
        break;
    case 2:
        $m_gender = '女';
        break;
    default:
        $m_gender = '保密';
}
Exemple #3
0
	if(!$cfg['send_email']) ErrorBox( $str['act_err'] );
	if( !isset($u_name,$u_email))
		ErrorBox( $str['act_err'] );

	if( In_Names( $u_name,$cfg['admins']))
	{
		WriteBBLog( "试图取回管理员 {$u_name} 的密码",'wrongpass');
		ErrorBox( $str['act_err'] );
	}

	if(($code=Check_U_Email($u_email))!==true)
		MessageBox($code);

	$sql = "SELECT u_id FROM `$cfg[tb_members]` WHERE u_name='$u_name' AND u_email='$u_email' LIMIT 1";
	$result = RenDB_Query($sql);
	if( RenDB_Num_Rows($result) != 1 )
	{
		ErrorBox('Email 和 用户名不匹配');
	}

	$row = RenDB_Fetch_Array( $result );
	if($row['u_id']<1) MessageBox( '发送失败' );

	//generate checkcode for new pass
	$passcheck=md5(uniqid(rand(),true));
	$newpass=substr(md5(uniqid(rand(),true)),0,8);
	//$newpass=uniqid(rand(),true);

	//write into database
	$sql = "UPDATE `$cfg[tb_members]` SET new_pass='******', new_pass_check='$passcheck' WHERE u_id='$row[u_id]' LIMIT 1";
	RenDB_Query($sql,true);
if (!$udata['is_member']) {
    ErrorBox($str['act_noguest']);
}
//$roombar=MakeRoomBar(1);
if (!isset($page)) {
    $page = 1;
}
$page = intval($page);
$ngblock = '';
//未开始的
$sql = "SELECT * FROM {$cfg['tb_newgames']} WHERE host_name='{$udata['u_name']}' LIMIT {$cfg['maxnewgame']}";
//$sql = "SELECT * FROM {$cfg['tb_newgames']} WHERE host_name='{$udata['u_name']}'";
$result = RenDB_Query($sql);
$nglist = '';
$gnum = 0;
if (RenDB_Num_Rows($result) > 0) {
    $game_cell = LoadTemplate('g_cell_mynew');
    while ($gdata = RenDB_Fetch_Array($result)) {
        if ($gdata['app_count'] > 0) {
            //超时检测
            $gtremain = GetNewGameTimeOutInfo();
            if ($gtremain == 0) {
                continue;
            }
            $gtremain = Time2HMS($gtremain) . HLTxt('*');
            $applist = explode('|', $gdata['app_list']);
            //array_shift( $applist );
            $gchallenge = "<select name=\"tarname\" onChange=\"document.mn_{$gnum}.submit()\"><option>====== ({$gdata['app_count']}) ======</option>";
            foreach ($applist as $k => $v) {
                $v = explode(',', $v);
                if (In_Names($v[0], $udata['friends'])) {
<?php

define('RBB_NO_GZIP', true);
require_once './include/common.php';
require_once './include/g_func.php';
if (!isset($gid)) {
    ErrorBox($str['act_err']);
}
$gid = intval($gid);
//读棋局
//$sql = "SELECT * FROM `$cfg[tb_games]` WHERE `gid`='$gid' LIMIT 1";
$sql = "SELECT * FROM `{$cfg['tb_games']}` WHERE `gid`='{$gid}' LIMIT 1";
$result = RenDB_Query($sql);
if (RenDB_Num_Rows($result) < 1) {
    ErrorBox('棋局不存在,可能已经被删除');
}
$gdata = RenDB_Fetch_Array($result);
if (!isset($filetype) || !in_array($filetype, array('pos'))) {
    $filetype = 'pos';
}
$filename = "{$gdata['gid']}#{$gdata['rules']}#{$gdata['b_name']}#{$gdata['w_name']}#{$gdata['swaped']}#{$gdata['status']}.{$filetype}";
//echo $filename;
switch ($filetype) {
    case 'pos':
        header("Content-type: x-file/pos");
        header("Content-Disposition: attachment; filename={$filename}");
        for ($i = 0; $i < $gdata['mcount']; $i++) {
            $pos = ord($gdata['moves'][$i]);
            $x = ($pos - 1) % 15;
            $y = 14 - intval(($pos - 1) / 15);
            $gdata['moves'][$i] = chr(15 * $y + $x);
function Rebuild_Global_Cache($insubdir = false)
{
    global $cfg;
    $buf = "<?php\n";
    //缓存banip
    $sql = "SELECT * FROM `{$cfg['tb_banips']}` ";
    $result = RenDB_Query($sql);
    $banip_S = array();
    $banip_D = array();
    if (RenDB_Num_Rows($result) > 0) {
        while ($row = RenDB_Fetch_Array($result)) {
            $cell = explode('.', $row['ban_ip']);
            if ($cell[3] == '*') {
                unset($cell[3]);
                $banip_D[] = '\'' . implode('.', $cell) . '\'';
            } else {
                $banip_S[] = "'{$row['ban_ip']}'";
            }
        }
    }
    $banip_S = implode(', ', $banip_S);
    $banip_D = implode(', ', $banip_D);
    $buf .= "\$RBB_CACHE['banip_S'] = array({$banip_S});\n";
    $buf .= "\$RBB_CACHE['banip_D'] = array({$banip_D});\n";
    /*
    //缓存论坛数据
    $buf .="\n";
    $sql ="SELECT * FROM $cfg[tb_forums] ORDER BY displayorder";
    $result = RenDB_Query($sql);
    
    $num=0;
    while( $row=RenDB_Fetch_Array( $result ) )
    {
    	//$displayorder=$row['displayorder'];
    	unset($row['topics']);
    	unset($row['posts']);
    	unset($row['lastpost']);
    	unset($row['lastposter']);
    	unset($row['displayorder']);
    	//unset($row['fid']);
    	unset($row['description']);
    	$fd=array();
    	foreach( $row as $k=>$v )
    		$fd[]='"'.addslashes($k).'"=>"'.addslashes($v).'"';
    	$fd=implode(', ',$fd);
    	$buf .="\$RBB_CACHE['forums'][$num] = array($fd);\n";
    	$num++;
    }
    if($num==0) $buf .="\$RBB_CACHE['forums']=array();\n";
    */
    //缓存设置
    $buf .= "\n";
    $sql = "SELECT * FROM {$cfg['tb_settings']}";
    $result = RenDB_Query($sql);
    while ($row = RenDB_Fetch_Array($result)) {
        /*
        		if(strpos($row['set_value'],'||')!==false)
        		{
        			$row['set_value']=explode('||',$row['set_value']);
        			foreach($row['set_value'] as $k=>$v)
        			{
        				$row['set_value'][$k]=str_replace('=>','"=>"',$v);
        			}
        			$buf .="\$cfg['$row[set_name]']=array(\"".implode('","',$row['set_value'])."\");\n";
        		}
        		else */
        $row['set_value'] = addslashes($row['set_value']);
        $buf .= "\$cfg['{$row['set_name']}']=\"{$row['set_value']}\";\n";
    }
    $buf .= "?>";
    $gc_file = $insubdir ? '../cache/global.php' : './cache/global.php';
    $fr = @fopen($gc_file, 'w');
    @flock($fr, LOCK_EX);
    @fwrite($fr, $buf);
    @fclose($fr);
}
function ShowHeader($location, $refresh = '', $span_ref = 3)
{
    global $cfg, $udata, $color, $fid, $str, $nowtime;
    //$autorefresh='';
    $autorefresh = $refresh == '' ? '' : "<meta http-equiv=\"refresh\" content=\"{$span_ref};url={$refresh}\">";
    //$menus ="$cfg[rbb_name]<br />";
    //$menus .='<hr /> ';
    //$menus ="<a href=\"index.php\">$cfg[rbb_name]</a><hr />";
    $menus = "";
    if ($udata['is_member']) {
        //用户属性
        $userbar = "<img src=\"./images/stan1.gif\" />";
        $userbar .= MemberLink($udata['u_name']);
        //$menus .=" ";
        $userbar .= " [<a href=\"loginout.php?action=logout&checkcode={$udata['act_check']}\">{$str['logout']}</a>]";
        //$menus .='<img src="./images/logout.gif" /> <a href="g_new.php?action=new1">'.$str['logout'].'</a><br />';
        //$menus .='<hr /> ';
        if (In_Names($udata['u_name'], $cfg['admins'])) {
            $userbar .= "[<a target=\"_blank\" href=\"zjcp/\">面板</a>]";
        }
        $menus .= '<a href="g_new.php?action=new1"><img src="./images/btn/menu_new.gif" /></a><br />';
        $menus .= '<a href="room_new.php"><img src="./images/btn/menu_search_new.gif" /></a><br />';
        $menus .= '<a href="g_search.php?action=input"><img src="./images/btn/menu_search.gif" /></a><br />';
        $menus .= '<hr /> ';
        $menus .= '<a href="cp_list.php"><img src="./images/btn/menu_cp.gif" /></a><br />';
        $menus .= '<hr /> ';
    } else {
        $userbar = "<img src=\"./images/stan0.gif\" />Guest";
        $menus .= '<a href="loginout.php?action=show"><img src="./images/btn/menu_login.gif" /></a><br /> ';
        if ($cfg['register_enable']) {
            $menus .= '<a href="m_man.php?action=reg1"><img src="./images/btn/menu_reg.gif" /></a><br /> ';
        }
        if ($cfg['send_email']) {
            $menus .= '<a href="m_man.php?action=sendpass1">' . $str['get_pass'] . '</a><br /> ';
        }
        $menus .= '<hr /> ';
    }
    if ($udata['is_member']) {
        //$mt0 = GetMicrotime();
        $sql = "SELECT gid FROM {$cfg['tb_newgames']} WHERE host_name='{$udata['u_name']}' AND app_count>0 LIMIT 1";
        $result = RenDB_Query($sql);
        $have_new_game = RenDB_Num_Rows($result);
        $sql = "SELECT gid FROM {$cfg['tb_games']} WHERE turn_name='{$udata['u_name']}' AND startdate<='{$nowtime}' LIMIT 1";
        $result = RenDB_Query($sql);
        $have_turn_game = RenDB_Num_Rows($result);
        //echo sprintf ( "%01.3f" , GetMicrotime() - $mt0 );
        //$menus .='<a href="room_mynew.php">'.$str['my_newgame'].'</a>';
        $menus .= $have_new_game ? '<a href="room_mynew.php"><img src="./images/btn/menu_mynew_1.gif" /></a><br />' : '<a href="room_mynew.php"><img src="./images/btn/menu_mynew.gif" /></a><br />';
        $menus .= '<a href="g_search.php?action=list&search_all_user=0&game_status=1&u_name=' . urlencode($udata['u_name']) . '">';
        $menus .= $have_turn_game ? '<img src="./images/btn/menu_mygame_1.gif" /></a><br />' : '<img src="./images/btn/menu_mygame.gif" /></a><br />';
        $menus .= '<a href="g_search.php?action=list&search_all_user=0&game_status=2&u_name=' . urlencode($udata['u_name']) . '"><img src="./images/btn/menu_myold.gif" /></a><br />';
        //$menus .='<img src="./images/renju_old.gif" /> <a href="room_old.php?myonly=1">我的旧谱</a><br />';
        $menus .= '<a href="pm_view.php">';
        $menus .= $udata['have_new_pm'] ? '<img src="./images/btn/menu_pm_1.gif" /></a><br />' : '<img src="./images/btn/menu_pm.gif" /></a><br />';
        $menus .= '<a href="m_fb.php?action=view"><img src="./images/btn/menu_friend.gif" /></a><br />';
        $menus .= '<a href="m_man.php?action=ed1"><img src="./images/btn/menu_setting.gif" /></a><br /> ';
        $menus .= '<hr /> ';
    }
    $menus .= '<a href="ranking.php"><img src="./images/btn/menu_ranking.gif" /></a><br /> ';
    //$menus.= '<img src="./images/help.gif" /> <a href="help.php"> '.$str['help_doc'].'</a><br /> ';
    //有上角的按钮
    $gbuttons = '';
    if (defined('IN_RBB_G_VIEW')) {
        global $gbtns, $ginfos, $gid;
        foreach ($gbtns as $k => $v) {
            if ($v != '') {
                $gbuttons .= "<a href=\"{$v}\"><img src=\"./images/btn/btn_{$k}.gif\"></a>";
            }
            //else $gbuttons.="<img src=\"./images/btn/btn_$k_gray.gif\">";
        }
        global $gid;
        if ($udata['is_member'] && $have_turn_game) {
            $location .= " <a href=\"g_view.php?gid={$gid}&next_turn=1\"><img src=\"./images/btn/next.gif\" alt=\"Next\"></a>";
        }
    } else {
        $ginfos = '';
    }
    eval('echo "' . LoadTemplate('header') . '";');
}
Exemple #8
0
define('IN_RBB_INDEX', true);
require_once './include/common.php';
SetNoUseCache();
$announce = implode('', file("./news/{$lang_pack}.html"));
$lang_link = '';
foreach ($langs as $k => $v) {
    if ($lang_pack == $k) {
        continue;
    }
    $lang_link .= "[<a href=\"index.php?lang_pack={$k}\">{$v}</a>]";
}
//当前在线列表
$sql = "SELECT * FROM {$cfg['tb_onlines']} WHERE o_time>{$o_deadline}";
$result = RenDB_Query($sql);
$onlcount = RenDB_Num_Rows($result);
$onlines = '';
$first = true;
$guestcount = 0;
while ($row = RenDB_Fetch_Array($result)) {
    if ($row['u_stand'] == 0) {
        $guestcount++;
        continue;
    }
    if (!$first) {
        $onlines .= ', ';
    }
    $onlines .= MemberLink($row['fake_name']);
    $first = false;
}
if ($guestcount > 0) {
 $buf .= '<h5>Last update: ' . TimeToDate($nowtime, true) . '</h5>';
 $buf .= $cpdata['description'];
 $sql = "SELECT * FROM `{$cfg['tb_groups']}` WHERE cp_id='{$cp_id}' ORDER BY group_id";
 $result = RenDB_Query($sql);
 $num = 0;
 while ($gpdata = RenDB_Fetch_Array($result)) {
     $sql = "SELECT * FROM `{$cfg['tb_players']}` WHERE group_id='{$gpdata['group_id']}' ORDER BY player_id";
     $result1 = RenDB_Query($sql);
     $players = array();
     while ($row = RenDB_Fetch_Array($result1)) {
         $players[] = $row;
     }
     //判断是否结束
     $sql = "SELECT gid FROM `{$cfg['tb_games']}` WHERE group_id='{$gpdata['group_id']}' AND status=0 LIMIT 1";
     $result3 = RenDB_Query($sql);
     if (RenDB_Num_Rows($result3)) {
         $str_status = 'ongoing';
     } else {
         $str_status = 'finished';
     }
     $sql = "SELECT COUNT(*) FROM `{$cfg['tb_games']}` WHERE group_id='{$gpdata['group_id']}'";
     $result3 = RenDB_Query($sql);
     $row = RenDB_Fetch_Row($result3);
     $total = $row[0];
     $sql = "SELECT COUNT(*) FROM `{$cfg['tb_games']}` WHERE group_id='{$gpdata['group_id']}' AND status=0";
     $result3 = RenDB_Query($sql);
     $row = RenDB_Fetch_Row($result3);
     $finished = $total - $row[0];
     $buf .= '<hr width="0" /><table width="100%" border="0"><tr><td>';
     $buf .= '<b>Group ' . chr(65 + $num) . " ({$str_status})</b>";
     $buf .= "</td><td align=\"right\">{$finished}/{$total} finished.[<a href=\"g_search.php?&action=list&group_id={$gpdata['group_id']}\">view</a>] [<a href=\"g_search.php?&action=list&group_id={$gpdata['group_id']}&packdown=1\">download</a>]</td></tr></table>";