Esempio n. 1
0
function ViewOnlineKFen($showdown_r, $u, $userid, $classid, $id, $pathid, $r)
{
    global $user_tablename, $level_r, $user_group, $user_userid, $class_r, $dbtbpre, $public_r, $user_userdate, $user_userfen, $user_username, $empire, $have_bak, $have_fen;
    if ($showdown_r[2]) {
        //下载次数限制
        $setuserday = "";
        if ($level_r[$u[$user_group]][daydown]) {
            $setuserday = DoCheckMDownNum($userid, $u[$user_group], 1);
        }
        //点数是否足够
        $showdown_r[3] = intval($showdown_r[3]);
        if ($showdown_r[3]) {
            if ($have_fen == 1) {
                //去除点数
                $usql = $empire->query("update " . $user_tablename . " set " . $user_userfen . "=" . $user_userfen . "-" . $showdown_r[3] . " where " . $user_userid . "='{$userid}'");
            }
            if ($have_bak == 0) {
                //备份下载记录
                $utfusername = doUtfAndGbk($u[$user_username], 1);
                BakDown($classid, $id, $pathid, $userid, $utfusername, $r[title], $showdown_r[3], 1);
            }
        }
        //更新用户下载次数
        if ($setuserday) {
            $usql = $empire->query($setuserday);
        }
    }
    //总下载数据增一
    $usql = $empire->query("update {$dbtbpre}ecms_" . $class_r[$classid][tbname] . " set totaldown=totaldown+1 where id='{$id}'");
}
Esempio n. 2
0
}
$showdown_r = explode("::::::", $path_r[$pathid]);
//下载权限
$user = array();
$downgroup = $showdown_r[2];
if ($downgroup) {
    $user = islogin();
    //取得会员资料
    $u = $empire->fetch1("select " . eReturnSelectMemberF('*') . " from " . eReturnMemberTable() . " where " . egetmf('userid') . "='{$user['userid']}' and " . egetmf('rnd') . "='{$user['rnd']}' limit 1");
    if (empty($u['userid'])) {
        echo "<script>alert('同一帐号,只能一人在线');window.close();</script>";
        exit;
    }
    //下载次数限制
    if ($level_r[$u['groupid']]['daydown']) {
        $setuserday = DoCheckMDownNum($user['userid'], $u['groupid'], 2);
        if ($setuserday == 'error') {
            echo "<script>alert('您的下载与观看次数已超过系统限制(" . $level_r[$u['groupid']]['daydown'] . " 次)!');window.close();</script>";
            exit;
        }
    }
    if ($level_r[$downgroup][level] > $level_r[$u['groupid']][level]) {
        echo "<script>alert('您的会员级别不足(" . $level_r[$downgroup][groupname] . "),没有下载此软件的权限!');window.close();</script>";
        exit;
    }
    //点数是否足够
    if ($showdown_r[3]) {
        //---------是否有历史记录
        $bakr = $empire->fetch1("select id,truetime from {$dbtbpre}enewsdownrecord where id='{$id}' and classid='{$classid}' and userid='{$user['userid']}' and pathid='{$pathid}' and online=0 order by truetime desc limit 1");
        if ($bakr[id] && time() - $bakr[truetime] <= $public_r[redodown] * 3600) {
        } else {
Esempio n. 3
0
function GetSofturl($classid, $id, $pathid, $p, $pass, $onlinetime, $onlinepass)
{
    global $empire, $dbtbpre, $public_r, $class_r, $emod_r, $level_r, $ecms_config;
    //验证IP
    eCheckAccessDoIp('onlineinfo');
    $classid = (int) $classid;
    $id = (int) $id;
    $pathid = (int) $pathid;
    $onlinetime = (int) $onlinetime;
    $p = RepPostVar($p);
    if (!$classid || empty($id) || empty($p)) {
        exit;
    }
    $p_r = explode(":::", $p);
    $userid = $p_r[0];
    $rnd = $p_r[1];
    //验证码
    $cpass = md5(ReturnDownSysCheckIp() . "wm_chief" . $public_r[downpass] . $userid);
    if ($cpass != $pass) {
        exit;
    }
    //验证验证码
    CheckOnlinePass($onlinetime, $onlinepass);
    //表不存在
    if (empty($class_r[$classid][tbname])) {
        exit;
    }
    $mid = $class_r[$classid][modid];
    $tbname = $class_r[$classid][tbname];
    $r = $empire->fetch1("select * from {$dbtbpre}ecms_" . $tbname . " where id='{$id}' limit 1");
    if (empty($r['id']) || $r['classid'] != $classid) {
        exit;
    }
    //副表
    $finfor = $empire->fetch1("select " . ReturnSqlFtextF($mid) . " from {$dbtbpre}ecms_" . $tbname . "_data_" . $r[stb] . " where id='{$r['id']}' limit 1");
    $r = array_merge($r, $finfor);
    //区分下载地址
    $path_r = explode("\r\n", $r[onlinepath]);
    if (!$path_r[$pathid]) {
        exit;
    }
    $showdown_r = explode("::::::", $path_r[$pathid]);
    $downgroup = $showdown_r[2];
    //下载权限
    if ($downgroup) {
        $userid = (int) $userid;
        $rnd = RepPostVar($rnd);
        //取得会员资料
        $u = $empire->fetch1("select " . eReturnSelectMemberF('*') . " from " . eReturnMemberTable() . " where " . egetmf('userid') . "='{$userid}' and " . egetmf('rnd') . "='{$rnd}' limit 1");
        if (empty($u['userid'])) {
            exit;
        }
        //下载次数限制
        $setuserday = "";
        if ($level_r[$u['groupid']]['daydown']) {
            $setuserday = DoCheckMDownNum($userid, $u['groupid'], 1);
        }
        if ($level_r[$downgroup][level] > $level_r[$u[groupid]][level]) {
            exit;
        }
        //点数是否足够
        $showdown_r[3] = intval($showdown_r[3]);
        if ($showdown_r[3]) {
            //---------是否有历史记录
            $bakr = $empire->fetch1("select id,truetime from {$dbtbpre}enewsdownrecord where id='{$id}' and classid='{$classid}' and userid='{$userid}' and pathid='{$pathid}' and online=1 order by truetime desc limit 1");
            if ($bakr[id] && time() - $bakr[truetime] <= $public_r[redodown] * 3600) {
            } else {
                //包月卡
                if ($u['userdate'] - time() > 0) {
                } else {
                    if ($showdown_r[3] > $u['userfen']) {
                        exit;
                    }
                    //去除点数
                    $usql = $empire->query("update " . eReturnMemberTable() . " set " . egetmf('userfen') . "=" . egetmf('userfen') . "-" . $showdown_r[3] . " where " . egetmf('userid') . "='{$userid}'");
                }
                //备份下载记录
                $utfusername = $u['username'];
                BakDown($classid, $id, $pathid, $userid, $utfusername, $r[title], $showdown_r[3], 1);
            }
        }
        //更新用户下载次数
        if ($setuserday) {
            $usql = $empire->query($setuserday);
        }
    }
    //总下载数据增一
    $usql = $empire->query("update {$dbtbpre}ecms_" . $class_r[$classid][tbname] . " set totaldown=totaldown+1 where id='{$id}'");
    //选择播放器
    $ftype = GetFiletype($showdown_r[1]);
    if (strstr($ecms_config['sets']['realplayertype'], ',' . $ftype . ',')) {
        Header("Content-Type: audio/x-pn-realaudio");
    } else {
        Header("Content-Type: video/x-ms-asf");
    }
    $downurl = stripSlashes($showdown_r[1]);
    $downurlr = ReturnDownQzPath($downurl, $showdown_r[4]);
    $downurl = $downurlr['repath'];
    //防盗链
    @(include ECMS_PATH . DASHBOARD . "/DownSys/class/enpath.php");
    $downurl = DoEnOnlinepath($downurl);
    db_close();
    $empire = null;
    echo $downurl;
    exit;
}
Esempio n. 4
0
    exit;
}
$showdown_r = explode("::::::", $path_r[$pathid]);
//下载权限
$downgroup = $showdown_r[2];
if ($downgroup) {
    $user = islogin();
    //取得会员资料
    $u = $empire->fetch1("select * from " . $user_tablename . " where " . $user_userid . "='{$user['userid']}' and " . $user_rnd . "='{$user['rnd']}' limit 1");
    if (empty($u[$user_userid])) {
        echo "<script>alert('同一帐号,只能一人在线');window.close();</script>";
        exit;
    }
    //下载次数限制
    if ($level_r[$u[$user_group]][daydown]) {
        $setuserday = DoCheckMDownNum($user[userid], $u[$user_group], 2);
        if ($setuserday == 'error') {
            echo "<script>alert('您的下载与观看次数已超过系统限制(" . $level_r[$u[$user_group]][daydown] . " 次)!');window.close();</script>";
            exit;
        }
    }
    if ($level_r[$downgroup][level] > $level_r[$u[$user_group]][level]) {
        echo "<script>alert('您的会员级别不足(" . $level_r[$downgroup][groupname] . "),没有下载此软件的权限!');window.close();</script>";
        exit;
    }
    //点数是否足够
    if ($showdown_r[3]) {
        //---------是否有历史记录
        $bakr = $empire->fetch1("select id,truetime from {$dbtbpre}enewsdownrecord where id='{$id}' and classid='{$classid}' and userid='{$user['userid']}' and pathid='{$pathid}' and online=0 order by truetime desc limit 1");
        if ($bakr[id] && time() - $bakr[truetime] <= $public_r[redodown] * 3600) {
        } else {