Commit 7d84d460 authored by 734642908@qq.com's avatar 734642908@qq.com

Merge branch 'dev'

parents 010d83fc 46da8793
......@@ -488,4 +488,9 @@ function curlPost($url,$data='',$is_ssl = false) {
// 关闭
curl_close($ch);
return $re;
}
function getTime() {
list($microsecond , $time) = explode(' ', microtime()); //' '中间是一个空格
return (float)sprintf('%.0f',(floatval($microsecond)+floatval($time))*1000);
}
\ No newline at end of file
......@@ -6,16 +6,40 @@ return array(
'port'=>'6379',
'auth'=>''
),
// 'LEWAN_HEZI' => array(
// 'DB_TYPE' => 'mysql',
// 'DB_HOST' => '127.0.0.1',
// 'DB_NAME' => 'lewan_hezi',
// 'DB_USER' => 'root',
// 'DB_PWD' => '1QAZ2wsx',
// 'DB_PORT' => '3306',
// 'DB_PREFIX' => '',
// 'DB_CHARSET' => 'utf8',
// 'DB_PARAMS' => array(\PDO::ATTR_CASE => \PDO::CASE_NATURAL,\PDO::ATTR_PERSISTENT => true),
// 'DB_DEBUG'=>true
// ),
'LEWAN_HEZI' => array(
'DB_TYPE' => 'mysql',
'DB_HOST' => '127.0.0.1',
'DB_HOST' => '172.16.0.9', //youyun_account 主表
'DB_NAME' => 'lewan_hezi',
'DB_USER' => 'root',
'DB_PWD' => '1QAZ2wsx',
'DB_USER' => 'lewean',
'DB_PWD' => 'a@lw%k3len',
'DB_PORT' => '3306',
'DB_PREFIX' => '',
'DB_CHARSET' => 'utf8',
'DB_PARAMS' => array(\PDO::ATTR_CASE => \PDO::CASE_NATURAL),
'DB_PARAMS' => array(\PDO::ATTR_PERSISTENT => true),
'DB_DEBUG'=>true
),
'LLEWAN_READ' => array(
'DB_TYPE' => 'mysql',
'DB_HOST' => '172.16.0.12', //前台只读数据库
'DB_NAME' => 'lewan_hezi',
'DB_USER' => 'lewean',
'DB_PWD' => 'a@lw%k3len',
'DB_PORT' => '3306',
'DB_PREFIX' => '',
'DB_CHARSET' => 'utf8',
'DB_PARAMS' => array(\PDO::ATTR_PERSISTENT => true),
'DB_DEBUG'=>true
),
'MYNAME' => 'Index',
......
......@@ -29,22 +29,23 @@ class FlushController extends BaseController
//刷新游戏数据
public function game()
public function game($game='zuiqiangyoulechang',$skip=0,$limit=10)
{
$gameList = M("yl_game","",C("LEWAN_HEZI"))->select();
$gameList = M("yl_game","",C("LEWAN_HEZI"))->where(['game_code'=>$game])->select();
if(!empty($gameList)) {
$redis = S(C('REDIS'));
foreach($gameList as $key=>$val) {
$gameList[$key]['typeList'] = M("yl_game_class","",C("LEWAN_HEZI"))->join('left join yl_game_class_list on yl_game_class.sysid=yl_game_class_list.r_class')->where(array('yl_game_class_list.r_game'=>$val['sysid']))->field('yl_game_class_list.r_class,yl_game_class_list.r_game,yl_game_class.name')->select();
$gameList[$key]['labelList'] = M("yl_game_label","",C("LEWAN_HEZI"))->join('left join yl_game_label_list on yl_game_label.sysid=yl_game_label_list.r_label')->where(array('yl_game_label_list.r_game'=>$val['sysid']))->field('yl_game_label_list.r_label,yl_game_label_list.r_game,yl_game_label.name')->select();
//保存游戏id(用于排序分页)
$redis->zadd('ylc_game_id',$val['sort'],$val['sysid']);
$redis->zadd($game.'_game_id',$val['sort'],$val['sysid']);
//保存游戏数据
$redis->hset('ylc_game_list',$val['sysid'],json_encode($gameList[$key]));
$redis->hset($game.'_game_list',$val['sysid'],json_encode($gameList[$key]));
}
exit('更新成功');
// exit('更新成功');
return $redis->ZREVRANGE($game.'_game_id',$skip,$limit);
} else {
exit('暂无数据');
exit(json_encode(array('c'=>2,'msg'=>'暂无数据')));
}
}
......@@ -69,6 +70,166 @@ class FlushController extends BaseController
}
public function cdnUrl() {
$refreshURL = I("url");
// $refreshURL = "https://res.g.llewan.com/uploadfile/common/qubapikashu-weixin/1.0.1/monsterData.json";
$url = "https://cdn.api.qcloud.com/v2/index.php?";
$params['Action'] = "RefreshCdnUrl";
$params['Nonce'] = rand(1000000000, 9999999999);
$params['SecretId'] = "AKIDghFh1BTzd5Njz4gtfHiy7B8veCZlucIo";
$params['Timestamp'] = time();
$params['urls.0'] = $refreshURL;
$secretKey = "ZzEJLPOH4mOGKbxGSUTHuMcidMwLZcT9";
$origin = "POSTcdn.api.qcloud.com/v2/index.php?Action=RefreshCdnUrl&Nonce={$params['Nonce']}&SecretId={$params['SecretId']}&Timestamp={$params['Timestamp']}&urls.0={$refreshURL}";
$origin = str_replace('_', '.', $origin);
$signStr = base64_encode(hash_hmac('sha1', $origin, $secretKey, true));
$params['Signature'] = $signStr;
echo curlPost($url,$params);exit;
$cdnRefreshURL = $url . http_build_query($params);
$result = file_get_contents($cdnRefreshURL);
echo($result);
}
public function testId() {
//连接本地的 Redis 服务
$redis = S(C('REDIS'));
while($redis->setnx('test_lock', getTime()+100)==0) {
if(getTime()>$redis->get('test_lock') && getTime()>$redis->getset('test_lock', getTime()+100)){
break;
}else{
usleep(100000);
}
}
$id = $redis->get('test_id');
if(empty($id)) {
$id = 100;
} else {
$id++;
}
$redis->set('test_id',$id);
echo $id;
$redis->del('test_lock');
}
public function xcxQrcode() {
$appid = 'wx62cbdff21c74d69d';
$secret = '42df86aa686101282378b8f42be23f48';
$url = 'https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid='.$appid.'&secret='.$secret;
$token = file_get_contents($url);
$token = json_decode($token,true)['access_token'];
$send_url = "https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=".$token;
$send_url = "https://api.weixin.qq.com/cgi-bin/wxaapp/createwxaqrcode?access_token=".$token;
$send_url = "https://api.weixin.qq.com/wxa/getwxacode?access_token=".$token;
$postArr = array(
// 'scene'=>'source_id=181818'
'path'=>'pages/index/index?source_id=2002'
,'width'=>'280'
);
$re = curlPost( $send_url , json_encode($postArr) );
file_put_contents('new2002.jpg',$re);
}
//发起微信小程序支付参数处理
public function wechatXcxSign() {
$data['wxappid'] = 'wxde2c29b8d9349652';
$data['mch_id'] = '1509771971';
$data['nonce_str'] = uniqid().mt_rand();
$data['send_name'] = '测试红包';
$data['mch_billno'] = '1509771971'.date('Ymd').time();
$data['total_amount'] = 1;
$data['total_num'] = 1;
$data['client_ip'] = '111.230.107.18';
$data['notify_way'] = 'JSAPI';
$data['wishing'] = '红包祝福语';
$data['act_name'] = '活动名称';
$data['remark'] = '备注';
$data['re_openid'] = 'oPftV44nnKGy1QBAO67-4To7kvDo';
$sign = wechatCreateSign($data);
$textTpl = "<xml>
<wxappid><![CDATA[%s]]></wxappid>
<mch_id><![CDATA[%s]]></mch_id>
<nonce_str><![CDATA[%s]]></nonce_str>
<send_name><![CDATA[%s]]></send_name>
<mch_billno><![CDATA[%s]]></mch_billno>
<total_amount><![CDATA[%s]]></total_amount>
<total_num><![CDATA[%s]]></total_num>
<client_ip><![CDATA[%s]]></client_ip>
<notify_way><![CDATA[%s]]></notify_way>
<wishing><![CDATA[%s]]></wishing>
<act_name><![CDATA[%s]]></act_name>
<remark><![CDATA[%s]]></remark>
<re_openid><![CDATA[%s]]></re_openid>
<sign><![CDATA[%s]]></sign>
</xml>";
$resultStr = sprintf($textTpl, $data['appid'], $data['mch_id'], $data['nonce_str'], $data['send_name'], $data['mch_billno'],$data['total_amount'],$data['total_num'],$data['client_ip'],$data['notify_way'],$data['wishing'],$data['act_name'],$data['remark'],$data['re_openid'],$sign);
$wechatOrder = curlPost('https://api.mch.weixin.qq.com/mmpaymkttransfers/sendminiprogramhb',$resultStr,true);
var_dump($wechatOrder);exit;
$orderObj = json_decode(json_encode(simplexml_load_string($wechatOrder, 'SimpleXMLElement', LIBXML_NOCDATA)), true);
if(!empty($orderObj['prepay_id'])) {
$payArr = array(
'appId'=>'wxfaf41889efd69020'
,'package'=>'prepay_id='.$orderObj['prepay_id']
,'nonceStr'=>uniqid().mt_rand()
,'timeStamp'=>time()
,'signType'=>'MD5'
);
$xcxPayArr = array(
'package'=>'prepay_id='.$orderObj['prepay_id']
,'nonceStr'=>$payArr['nonceStr']
,'timeStamp'=>strval($payArr['timeStamp'])
,'signType'=>'MD5'
,'paySign'=>$this->wechatCreateSign($payArr)
);
return $xcxPayArr;
}
return array('description'=>$wechatOrder);
}
public function actionSet() {
//access_token无效重新获取
$url = 'https://game.test.llewan.com/config/getToken';
$token = file_get_contents($url);
$tokenArr = json_decode($token,true);
if(!empty($tokenArr['d']['token'])) {
$actionUrl = 'https://api.weixin.qq.com/marketing/user_action_sets/add?version=v1.0&access_token='.$tokenArr['d']['token'];
$postData = array(
'type'=>'WEB'
,'name'=>'secodeTest'
,'"description"'=>'第二次测试获取数据源ID'
);
$setId = curlPost($actionUrl,$postData,true);
var_dump($setId);
} else {
exit(json_encode(array('c'=>2,'msg'=>'获取失败','error'=>$tokenArr['error'])));
}
}
}
?>
\ No newline at end of file
......@@ -11,15 +11,20 @@ class GameController extends BaseController
//游戏列表
public function gameList()
{
$game = I('game','zuiqiangyoulechang');
//获取数量(分页)
$size = I('size',10);
$page = I('page',1);
$size = I('size',10);
$page = I('page',1);
$skip = $size * ($page-1);
$redis = S(C('REDIS'));
$id = $redis->ZREVRANGE('ylc_game_id',$skip,$skip+$size-1);
$id = $redis->ZREVRANGE($game.'_game_id',$skip,$skip+$size-1);
if(empty($id)) {
$flushObj = new \Home\Controller\FlushController();
$id = $flushObj->game($game,$skip,$skip+$size-1);
}
foreach($id as $key=>$val) {
$arr = json_decode($redis->hget('ylc_game_list',$val),true);
$arr = json_decode($redis->hget($game.'_game_list',$val),true);
if($arr['status'] == 1) {
$gameList[] = array(
......@@ -27,8 +32,10 @@ class GameController extends BaseController
,'gamer'=>$arr['gamer']
,'name'=>$arr['name']
,'ad'=>$arr['ad']
,'icon'=>$arr['icon']
,'appid'=>$arr['appid']
,'gourl'=>$arr['gourl']
,'intro'=>$arr['intro']
);
}
}
......@@ -47,11 +54,7 @@ class GameController extends BaseController
,'msg'=>'暂无数据'
);
}
// $model= new \Home\Model\GameModel();
//获取游戏列表数据
// $result = $model->getData();
echo $this->formatRes($result);
}
......
......@@ -10,7 +10,7 @@ class UserController extends BaseController
//用户个人信息
public function userInfo()
{
{ $re444 = M("game_member","","LLEWAN_READ")->find();
// $model= M("game_member","",C("LEWAN_HEZI"));
$model= new \Home\Model\UserModel();
$token = decryptToken(I('token'));
......
......@@ -11,7 +11,10 @@
// 应用入口文件
// 检测PHP环境
header("Access-Control-Allow-Origin: *");
header("Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept, Time, Sercet");
header('Access-Control-Allow-Methods: GET, POST, PUT,DELETE,OPTIONS');
if(strtoupper($_SERVER['REQUEST_METHOD'])== 'OPTIONS') exit;
if(version_compare(PHP_VERSION,'5.3.0','<')) die('require PHP > 5.3.0 !');
// 开启调试模式 建议开发阶段开启 部署阶段注释或者设为false
define('APP_DEBUG',true);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment