Exemple #1
0
function mobile2area($mobile)
{
    if (!is_mobile($mobile)) {
        return 'Unknown';
    }
    $url = 'http://apistore.baidu.com/microservice/mobilephone?tel=' . $mobile;
    $rec = dcurl($url);
    $area = '';
    if (strpos($rec, 'retData') !== false) {
        $tmp = json_decode($rec, true);
        $arr = $tmp['retData'];
        if (isset($arr['supplier'])) {
            $area .= $arr['supplier'] . '-';
        }
        if (isset($arr['province'])) {
            $area .= $arr['province'];
        }
        if (isset($arr['city'])) {
            $area .= $arr['city'];
        }
    }
    return $area ? convert($area, 'UTF-8', DT_CHARSET) : 'Unknown';
}
Exemple #2
0
<?php

require '../../../common.inc.php';
require 'init.inc.php';
$_REQUEST['code'] or dalert('Error Request.', $MODULE[2]['linkurl'] . $DT['file_login'] . '?step=callback&site=' . $site);
$par = 'grant_type=authorization_code' . '&code=' . $_REQUEST['code'] . '&client_id=' . BD_ID . '&client_secret=' . BD_SECRET . '&redirect_uri=' . urlencode(BD_CALLBACK);
$rec = dcurl(BD_TOKEN_URL, $par);
if (strpos($rec, 'access_token') !== false) {
    $arr = json_decode($rec, true);
    $_SESSION['bd_access_token'] = $arr['access_token'];
    dheader('index.php?time=' . $DT_TIME);
} else {
    dalert('Error Token.', $MODULE[2]['linkurl'] . $DT['file_login'] . '?step=token&site=' . $site);
}
Exemple #3
0
}
$charge = $r['amount'] + $r['fee'];
$post = array();
$post['appid'] = $PAY[$bank]['appid'];
$post['mch_id'] = $PAY[$bank]['partnerid'];
$post['nonce_str'] = random(32);
$post['body'] = $charge_title ? $charge_title : '会员(' . $_username . ')充值(流水号:' . $orderid . ')';
$post['body'] = convert($post['body'], DT_CHARSET, 'UTF-8');
$post['out_trade_no'] = $itemid;
$post['total_fee'] = $charge * 100;
$post['spbill_create_ip'] = $DT_IP;
$post['notify_url'] = DT_PATH . 'api/pay/' . $bank . '/' . ($PAY[$bank]['notify'] ? $PAY[$bank]['notify'] : 'notify.php');
$post['trade_type'] = 'NATIVE';
$post['product_id'] = $itemid;
$post['sign'] = make_sign($post, $PAY[$bank]['keycode']);
$rec = dcurl('https://api.mch.weixin.qq.com/pay/unifiedorder', make_xml($post));
#log_write($rec, 'wxr', 1);
if (strpos($rec, 'code_url') !== false) {
    $x = simplexml_load_string($rec, 'SimpleXMLElement', LIBXML_NOCDATA);
} else {
    if (strpos($rec, 'return_msg') !== false) {
        $x = simplexml_load_string($rec, 'SimpleXMLElement', LIBXML_NOCDATA);
        dalert(convert($x->return_msg, 'UTF-8', DT_CHARSET), $MODULE[2]['linkurl'] . 'charge.php?action=record');
    } else {
        dalert('Can Not Connect weixin', $MODULE[2]['linkurl'] . 'charge.php?action=record');
    }
}
?>
<html>
<head>
    <meta http-equiv="content-type" content="text/html;charset=<?php 
Exemple #4
0
 if ($action == 'member') {
     isset($auth) or $auth = '';
     if ($auth) {
         $openid = decrypt($auth, DT_KEY . 'WXID');
         if (is_openid($openid)) {
             set_cookie('weixin_openid', $auth);
             set_cookie('weixin_url', 'my.php');
             dheader('weixin.php?action=login&wx=' . $DT_TIME);
         }
     }
 } else {
     if ($action == 'callback') {
         if ($code) {
             include DT_ROOT . '/api/weixin/config.inc.php';
             $url = 'https://api.weixin.qq.com/sns/oauth2/access_token?appid=' . WX_APPID . '&secret=' . WX_APPSECRET . '&code=' . $code . '&grant_type=authorization_code';
             $rec = dcurl($url);
             $arr = json_decode($rec, true);
             if ($arr['openid']) {
                 $openid = $arr['openid'];
                 set_cookie('weixin_openid', encrypt($openid, DT_KEY . 'WXID'));
                 dheader('weixin.php?action=login&wx=' . $DT_TIME);
             }
         }
     } else {
         isset($url) or $url = 'index.php';
         if ($moduleid == 2 || $moduleid > 3) {
             $url = mobileurl($moduleid);
         }
         if ($_userid) {
             dheader($url);
         }
Exemple #5
0
<?php

require '../../../common.inc.php';
require 'init.inc.php';
$success = 0;
$DS = array();
if ($_SESSION['bd_access_token']) {
    $par = 'access_token=' . $_SESSION['bd_access_token'];
    $rec = dcurl(BD_USERINFO_URL, $par);
    if (strpos($rec, 'uname') !== false) {
        $success = 1;
        $arr = json_decode($rec, true);
        $openid = $arr['uid'];
        $nickname = convert($arr['uname'], 'UTF-8', DT_CHARSET);
        $avatar = '';
        $url = '';
        $DS = array('bd_access_token');
    }
}
require '../destoon.inc.php';
Exemple #6
0
<?php

require '../../../common.inc.php';
require 'init.inc.php';
$_REQUEST['code'] or dalert('Error Request.', $MODULE[2]['linkurl'] . $DT['file_login'] . '?step=callback&site=' . $site);
$par = 'grant_type=authorization_code' . '&code=' . $_REQUEST['code'] . '&client_id=' . NE_ID . '&client_secret=' . NE_SECRET . '&redirect_uri=' . urlencode(NE_CALLBACK);
$rec = dcurl(NE_TOKEN_URL, $par);
if (strpos($rec, 'access_token') !== false) {
    $arr = json_decode($rec, true);
    $_SESSION['ne_access_token'] = $arr['access_token'];
    dheader('index.php?time=' . $DT_TIME);
} else {
    dalert('Error Token.', $MODULE[2]['linkurl'] . $DT['file_login'] . '?step=token&site=' . $site);
}
Exemple #7
0
<?php

require '../../../common.inc.php';
require 'init.inc.php';
$_REQUEST['code'] or dalert('Error Request.', $MODULE[2]['linkurl'] . $DT['file_login'] . '?step=callback&site=' . $site);
$_REQUEST['state'] == $_SESSION['state'] or dalert('Error Request.', $MODULE[2]['linkurl'] . $DT['file_login'] . '?step=callback&site=' . $site);
$par = 'grant_type=authorization_code' . '&client_id=' . QQ_ID . '&client_secret=' . QQ_SECRET . '&code=' . $_REQUEST['code'] . '&redirect_uri=' . urlencode(QQ_CALLBACK);
$rec = dcurl(QQ_TOKEN_URL, $par);
if (strpos($rec, 'access_token') !== false) {
    parse_str($rec, $arr);
    $_SESSION['qq_access_token'] = $arr['access_token'];
    $_SESSION['qq_access_time'] = $arr['expires_in'];
    if ($OAUTH[$site]['sync']) {
        set_cookie('qq_token', $arr['access_token'], $DT_TIME + $arr['expires_in']);
    }
    dheader('index.php?time=' . $DT_TIME);
} else {
    dalert('Error Token.', $MODULE[2]['linkurl'] . $DT['file_login'] . '?step=token&site=' . $site);
}
?>
?>
Exemple #8
0
function dmail($mail_to, $mail_subject, $mail_body, $mail_from = '', $mail_sign = true)
{
    global $DT;
    if ($DT['mail_type'] == 'close') {
        return 'close';
    }
    if ($DT['mail_sign'] && $mail_sign) {
        $mail_body .= $DT['mail_sign'];
    }
    if ($DT['mail_type'] == 'sc') {
        $url = 'http://sendcloud.sohu.com/webapi/mail.send.json';
        $par = 'api_user='******'smtp_user'] . '&api_key=' . $DT['smtp_pass'] . '&from=' . $DT['mail_sender'] . '&fromname=' . convert($DT['mail_name'], DT_CHARSET, 'UTF-8') . '&to=' . $mail_to . '&subject=' . convert($mail_subject, DT_CHARSET, 'UTF-8') . '&html=' . convert($mail_body, DT_CHARSET, 'UTF-8');
        $rec = dcurl($url, $par);
        $arr = json_decode($rec, true);
        if ($arr['message'] == 'success') {
            return 'SUCCESS';
        }
        $errmsg = '';
        foreach ($arr['errors'] as $v) {
            $errmsg .= convert($v, 'UTF-8', DT_CHARSET) . "\n";
        }
        $errmsg = trim($errmsg);
        if (defined('TESTMAIL')) {
            dalert('Error:' . $errmsg);
        }
        log_write($errmsg, 'sendcloud');
        return $errmsg;
    } else {
        $sendmail_from = $mail_from ? $mail_from : $DT['mail_sender'];
        $mail_from = "=?" . strtolower(DT_CHARSET) . "?B?" . base64_encode($DT['mail_name'] ? $DT['mail_name'] : $DT['sitename']) . "?= <" . $sendmail_from . ">";
        $mail_subject = stripslashes($mail_subject);
        $mail_subject = str_replace("\r", '', str_replace("\n", '', $mail_subject));
        $mail_subject = "=?" . strtolower(DT_CHARSET) . "?B?" . base64_encode($mail_subject) . "?=";
        $mail_body = stripslashes($mail_body);
        $mail_body = chunk_split(base64_encode(str_replace("\r\n.", " \r\n..", str_replace("\n", "\r\n", str_replace("\r", "\n", str_replace("\r\n", "\n", str_replace("\n\r", "\r", $mail_body)))))));
        $mail_dlmt = $DT['mail_delimiter'] == 1 ? "\r\n" : ($DT['mail_delimiter'] == 2 ? "\n" : "\r");
        $headers = '';
        $headers .= "From: {$mail_from}" . $mail_dlmt;
        $headers .= "X-Priority: 3" . $mail_dlmt;
        $headers .= "X-Mailer: Destoon" . $mail_dlmt;
        $headers .= "MIME-Version: 1.0" . $mail_dlmt;
        $headers .= "Content-type: text/html; charset=" . DT_CHARSET . $mail_dlmt;
        $headers .= "Content-Transfer-Encoding: base64" . $mail_dlmt;
    }
    if ($DT['mail_type'] == 'smtp') {
        $host = $DT['smtp_host'] . ':' . $DT['smtp_port'] . ' ';
        if (!($fp = fsockopen($DT['smtp_host'], $DT['smtp_port'], $errno, $errstr, 30))) {
            $errmsg = $host . 'can not connect to the SMTP server';
            if (defined('TESTMAIL')) {
                dalert('Error:' . trim($errmsg));
            }
            log_write($errmsg, 'smtp');
            return $errmsg;
        }
        stream_set_blocking($fp, true);
        $RE = fgets($fp, 512);
        if (substr($RE, 0, 3) != '220') {
            $errmsg = $host . $RE;
            if (defined('TESTMAIL')) {
                dalert('Error:' . trim($errmsg));
            }
            log_write($errmsg, 'smtp');
            return $errmsg;
        }
        fputs($fp, ($DT['smtp_auth'] ? 'EHLO' : 'HELO') . " Destoon\r\n");
        $RE = fgets($fp, 512);
        if (substr($RE, 0, 3) != 220 && substr($RE, 0, 3) != 250) {
            $errmsg = $host . 'HELO/EHLO - ' . $RE;
            if (defined('TESTMAIL')) {
                dalert('Error:' . trim($errmsg));
            }
            log_write($errmsg, 'smtp');
            return $errmsg;
        }
        while (1) {
            if (substr($RE, 3, 1) != '-' || empty($RE)) {
                break;
            }
            $RE = fgets($fp, 512);
        }
        if ($DT['smtp_auth']) {
            fputs($fp, "AUTH LOGIN\r\n");
            $RE = fgets($fp, 512);
            if (substr($RE, 0, 3) != 334) {
                $errmsg = $host . 'AUTH LOGIN - ' . $RE;
                if (defined('TESTMAIL')) {
                    dalert('Error:' . trim($errmsg));
                }
                log_write($errmsg, 'smtp');
                return $errmsg;
            }
            fputs($fp, base64_encode($DT['smtp_user']) . "\r\n");
            $RE = fgets($fp, 512);
            if (substr($RE, 0, 3) != 334) {
                $errmsg = $host . 'USERNAME - ' . $RE;
                if (defined('TESTMAIL')) {
                    dalert('Error:' . trim($errmsg));
                }
                log_write($errmsg, 'smtp');
                return $errmsg;
            }
            fputs($fp, base64_encode($DT['smtp_pass']) . "\r\n");
            $RE = fgets($fp, 512);
            if (substr($RE, 0, 3) != 235) {
                $errmsg = $host . 'PASSWORD - ' . $RE;
                if (defined('TESTMAIL')) {
                    dalert('Error:' . trim($errmsg));
                }
                log_write($errmsg, 'smtp');
                return $errmsg;
            }
            $mail_from = strpos($DT['smtp_user'], '@') !== false ? $DT['smtp_user'] : $DT['mail_sender'];
        } else {
            $mail_from = $DT['mail_sender'];
        }
        fputs($fp, "MAIL FROM: <" . preg_replace("/.*\\<(.+?)\\>.*/", "\\1", $mail_from) . ">\r\n");
        $RE = fgets($fp, 512);
        if (substr($RE, 0, 3) != 250) {
            fputs($fp, "MAIL FROM: <" . preg_replace("/.*\\<(.+?)\\>.*/", "\\1", $mail_from) . ">\r\n");
            $RE = fgets($fp, 512);
            if (substr($RE, 0, 3) != 250) {
                $errmsg = $host . 'MAIL FROM - ' . $RE;
                if (defined('TESTMAIL')) {
                    dalert('Error:' . trim($errmsg));
                }
                log_write($errmsg, 'smtp');
                return $errmsg;
            }
        }
        foreach (explode(',', $mail_to) as $touser) {
            $touser = trim($touser);
            if ($touser) {
                fputs($fp, "RCPT TO: <" . preg_replace("/.*\\<(.+?)\\>.*/", "\\1", $touser) . ">\r\n");
                $RE = fgets($fp, 512);
                if (substr($RE, 0, 3) != 250) {
                    fputs($fp, "RCPT TO: <" . preg_replace("/.*\\<(.+?)\\>.*/", "\\1", $touser) . ">\r\n");
                    $RE = fgets($fp, 512);
                    $errmsg = $host . 'RCPT TO - ' . $RE;
                    if (defined('TESTMAIL')) {
                        dalert('Error:' . trim($errmsg));
                    }
                    log_write($errmsg, 'smtp');
                    return $errmsg;
                }
            }
        }
        fputs($fp, "DATA\r\n");
        $RE = fgets($fp, 512);
        if (substr($RE, 0, 3) != 354) {
            $errmsg = $host . 'DATA - ' . $RE;
            if (defined('TESTMAIL')) {
                dalert('Error:' . trim($errmsg));
            }
            log_write($errmsg, 'smtp');
            return $errmsg;
        }
        list($msec, $sec) = explode(' ', microtime());
        $headers .= "Message-ID: <" . date('YmdHis', $sec) . "." . $msec * 1000000 . "." . substr($mail_from, strpos($mail_from, '@')) . ">" . $mail_dlmt;
        fputs($fp, "Date: " . date('r') . "\r\n");
        fputs($fp, "To: " . $mail_to . "\r\n");
        fputs($fp, "Subject: " . $mail_subject . "\r\n");
        fputs($fp, $headers . "\r\n");
        fputs($fp, "\r\n\r\n");
        fputs($fp, "{$mail_body}\r\n.\r\n");
        $RE = fgets($fp, 512);
        if (substr($RE, 0, 3) != 250) {
            $errmsg = $host . 'END - ' . $RE;
            if (defined('TESTMAIL')) {
                dalert('Error:' . trim($errmsg));
            }
            log_write($errmsg, 'smtp');
            return $errmsg;
        }
        fputs($fp, "QUIT\r\n");
        return 'SUCCESS';
    } else {
        if ($DT['mail_type'] != 'mail') {
            ini_set('SMTP', $DT['smtp_host']);
            ini_set('smtp_port', $DT['smtp_port']);
            ini_set('sendmail_from', $sendmail_from);
        }
        return @mail($mail_to, $mail_subject, $mail_body, $headers) ? 'SUCCESS' : '';
    }
}
Exemple #9
0
<?php

require '../../../common.inc.php';
require 'init.inc.php';
$success = 0;
$DS = array();
if ($_SESSION['qq_access_token']) {
    $par = 'access_token=' . $_SESSION['qq_access_token'];
    $rec = dcurl(QQ_ME_URL, $par);
    if (strpos($rec, 'client_id') !== false) {
        $rec = str_replace('callback(', '', $rec);
        $rec = str_replace(');', '', $rec);
        $rec = trim($rec);
        $arr = json_decode($rec, true);
        $openid = $arr['openid'];
        if ($OAUTH[$site]['sync']) {
            set_cookie('qq_openid', encrypt($openid, DT_KEY . 'QQID'), $DT_TIME + $_SESSION['qq_access_time']);
        }
        $par = 'access_token=' . $_SESSION['qq_access_token'] . '&oauth_consumer_key=' . QQ_ID . '&openid=' . $openid;
        $rec = dcurl(QQ_USERINFO_URL, $par);
        if (strpos($rec, 'nickname') !== false) {
            $success = 1;
            $arr = json_decode($rec, true);
            $nickname = convert($arr['nickname'], 'UTF-8', DT_CHARSET);
            $avatar = $arr['figureurl_2'];
            $url = '';
            $DS = array('qq_access_token', 'qq_access_time', 'state');
        }
    }
}
require '../destoon.inc.php';
Exemple #10
0
 function http_post($url, $par)
 {
     $rec = dcurl($url, $par);
     $arr = json_decode($rec, true);
     return $arr ? $arr : array();
 }
Exemple #11
0
<?php

require '../../../common.inc.php';
require 'init.inc.php';
$_REQUEST['code'] or dalert('Error Request.', $MODULE[2]['linkurl'] . $DT['file_login'] . '?step=callback&site=' . $site);
$par = 'client_id=' . urlencode(WRAP_CLIENT_ID) . '&redirect_uri=' . urlencode(WRAP_CALLBACK) . '&client_secret=' . urlencode(WRAP_CLIENT_SECRET) . '&code=' . urlencode($_REQUEST['code']) . '&grant_type=authorization_code';
$rec = dcurl(WRAP_ACCESS_URL, $par);
if (strpos($rec, 'access_token') !== false) {
    $arr = json_decode($rec, true);
    $_SESSION['access_token'] = $arr['access_token'];
    dheader('index.php?time=' . $DT_TIME);
} else {
    dalert('Error Token.', $MODULE[2]['linkurl'] . $DT['file_login'] . '?step=token&site=' . $site);
}
Exemple #12
0
         $img_info or message($L['avatar_img_t']);
         $img_info[0] >= 128 or message($L['avatar_img_w']);
         $img_info[1] >= 128 or message($L['avatar_img_h']);
         $par = 'auth=' . encrypt($_userid . '|' . $_username, DT_KEY . 'AVATAR');
         require DT_ROOT . '/include/image.class.php';
         $image = new image($file);
         $image->thumb(128, 128);
         $par .= '&pic1=' . urlencode(base64_encode(file_get($file)));
         $image = new image($file);
         $image->thumb(48, 48);
         $par .= '&pic2=' . urlencode(base64_encode(file_get($file)));
         $image = new image($file);
         $image->thumb(20, 20);
         $par .= '&pic3=' . urlencode(base64_encode(file_get($file)));
         file_del($file);
         $arr = dcurl(DT_PATH . 'api/avatar/upload.php', $par);
         if (strpos($arr, ':1}') !== false) {
             dheader('?itemid=' . $DT_TIME);
         }
         dalert($L['avatar_img_e'] . $arr, '?itemid=' . $DT_TIME);
     } else {
         message($upload->errmsg);
     }
     break;
 case 'delete':
     if ($avatar) {
         $img = array();
         $img[1] = useravatar($_userid, 'large', 0, 2);
         $img[2] = useravatar($_userid, '', 0, 2);
         $img[3] = useravatar($_userid, 'small', 0, 2);
         $img[4] = useravatar($_username, 'large', 1, 2);
Exemple #13
0
         toutf8();
     }
     break;
 case 'count':
     if ($EXT['comment_api'] == 'changyan') {
         $rec = dcurl('http://changyan.sohu.com/api/2/topic/load?client_id=' . $EXT['comment_api_id'] . '&topic_source_id=' . $mid . '-' . $itemid . '&topic_url=' . urlencode($linkurl));
         if (strpos($rec, 'cmt_sum') !== false) {
             $arr = json_decode($rec, true);
             echo $arr['cmt_sum'];
             exit;
         } else {
             exit('0');
         }
     } else {
         if ($EXT['comment_api'] == 'duoshuo') {
             $rec = dcurl('http://api.duoshuo.com/threads/counts.json?short_name=' . $EXT['comment_api_id'] . '&threads=' . $mid . '-' . $itemid);
             if (strpos($rec, 'comments') !== false) {
                 $arr = json_decode($rec, true);
                 echo $arr['response'][$mid . '-' . $itemid]['comments'];
                 exit;
             } else {
                 exit('0');
             }
         } else {
             $condition = "item_mid={$mid} AND item_id={$itemid} AND status=3";
             $r = $db->get_one("SELECT COUNT(*) AS num FROM {$DT_PRE}comment WHERE {$condition}");
             echo $r['num'];
             exit;
         }
     }
     break;
Exemple #14
0
    $result = curl_exec($ch);
    $errno = curl_errno($ch);
    $infos = curl_getinfo($ch);
    curl_close($ch);
    $h = $infos['redirect_url'];
    return $h;
}
$sql = "select";
//获取库里淘宝的内容
$result = db::g($sql);
foreach ($result as $key => $val) {
    $header = get_headers($val['click_url'], 1);
    $refer = $header['Location'];
    $tu = explode("tu=", $refer);
    $tu = $tu['1'];
    $url = urldecode($tu);
    $zurl = getU($url, $refer);
    $h = dcurl($zurl);
    $img = '<img id="J_ImgBooth" alt=".*?" src="(.*)?".*?/>';
    //获取图片
    preg_match($img, $h, $h);
    if ($h) {
        $p = strpos($h['1'], "jpg");
        $h = substr($h['1'], 0, $p);
        $h = "http:" . $h . "jpg";
        echo $h . "\n";
        $sql = "update";
        //更新操作
        db::query($sql);
    }
}
Exemple #15
0
<?php

require '../../../common.inc.php';
require 'init.inc.php';
$_REQUEST['code'] or dalert('Error Request.', $MODULE[2]['linkurl'] . $DT['file_login'] . '?step=callback&site=' . $site);
$par = 'grant_type=authorization_code' . '&code=' . $_REQUEST['code'] . '&appid=' . WX_ID . '&secret=' . WX_SECRET;
$rec = dcurl(WX_TOKEN_URL, $par);
if (strpos($rec, 'access_token') !== false) {
    $arr = json_decode($rec, true);
    $_SESSION['wx_access_token'] = $arr['access_token'];
    $_SESSION['wx_openid'] = $arr['openid'];
    dheader('index.php?time=' . $DT_TIME);
} else {
    dalert('Error Token.', $MODULE[2]['linkurl'] . $DT['file_login'] . '?step=token&site=' . $site);
}
Exemple #16
0
<?php

require '../../../common.inc.php';
require 'init.inc.php';
$success = 0;
$DS = array();
if ($_SESSION['wx_access_token']) {
    $par = 'access_token=' . $_SESSION['wx_access_token'] . '&openid=' . $_SESSION['wx_openid'];
    $rec = dcurl(WX_USERINFO_URL, $par);
    if (strpos($rec, 'nickname') !== false) {
        $success = 1;
        $arr = json_decode($rec, true);
        $openid = $arr['openid'];
        $nickname = convert($arr['nickname'], 'UTF-8', DT_CHARSET);
        $avatar = $arr['headimgurl'];
        $url = '';
        $DS = array('wx_access_token', 'wx_openid');
    }
}
require '../destoon.inc.php';
Exemple #17
0
<?php

require '../../../common.inc.php';
require 'init.inc.php';
$_REQUEST['code'] or dalert('Error Request.', $MODULE[2]['linkurl'] . $DT['file_login'] . '?step=callback&site=' . $site);
$par = 'grant_type=authorization_code' . '&code=' . $_REQUEST['code'] . '&client_id=' . TB_ID . '&client_secret=' . TB_SECRET . '&redirect_uri=' . urlencode(TB_CALLBACK);
$rec = dcurl(TB_TOKEN_URL, $par);
if (strpos($rec, 'access_token') !== false) {
    $arr = json_decode($rec, true);
    $_SESSION['tb_access_token'] = $arr['access_token'];
    $_SESSION['tb_openid'] = $arr['taobao_user_id'];
    $_SESSION['tb_nickname'] = convert(urldecode($arr['taobao_user_nick']), 'UTF-8', DT_CHARSET);
    dheader('index.php?time=' . $DT_TIME);
} else {
    dalert('Error Token.', $MODULE[2]['linkurl'] . $DT['file_login'] . '?step=token&site=' . $site);
}