diff --git a/extend/hema/wechat/Index.php b/extend/hema/wechat/Index.php index fcd75e4..2c224e4 100644 --- a/extend/hema/wechat/Index.php +++ b/extend/hema/wechat/Index.php @@ -42,11 +42,11 @@ class Index //接收微信推送数据 $data = file_get_contents('php://input'); -// $data = simplexml_load_string($data, "SimpleXMLElement", LIBXML_NOCDATA); + $data = simplexml_load_string($data, "SimpleXMLElement", LIBXML_NOCDATA); if (!empty($data)) { -// $data = json_decode(json_encode($data), true); + $data = json_decode(json_encode($data), true); - $data = json_decode($data, true); + // $data = json_decode($data, true); $openid = $data['FromUserName']; $wx = new Driver; $access_token = $wx->getWxAccessToken(10001, $openid); @@ -56,7 +56,7 @@ class Index //首次关注 if ($data['Event'] == 'subscribe') { - $user = Db::name('user_wx')->where('open_id', $openid)->value('is_new'); + $user = Db::name('user_wx')->where('wx_openid', $openid)->value('is_new'); if (!empty($user) && $user !== 1) { //不是新关注 @@ -64,13 +64,17 @@ class Index } else { if (empty($user)) { - $wx_url = 'https://api.weixin.qq.com/cgi-bin/user/info?access_token=' . $access_token . 'openid=' . $openid . '&lang=zh_CN'; + $wx_url = 'https://api.weixin.qq.com/cgi-bin/user/info?access_token=' . $access_token . '&openid=' . $openid . '&lang=zh_CN'; $info = Http::get($wx_url); + $info=json_decode($info,true); + + $unionid = $info['unionid']; + //插入一条新用户数据 $data = [ - 'wx_open_id' => $openid, + 'wx_openid' => $openid, 'unionid' => $unionid, 'create_time' => time() ]; @@ -97,7 +101,7 @@ class Index Db::name('food_coupon_user_wx')->insert($data1); Db::name('food_coupon_user_wx')->insert($data2); Db::commit(); - die('success'); + } catch (\Exception $e) { Db::rollback(); write_log(json_encode($e->getMessage()), __DIR__); @@ -105,6 +109,9 @@ class Index } + + + //发送公众号消息 $url = 'https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token=' . $access_token; $queryarr = [ diff --git a/extend/hema/wechat/logs/20231207.log b/extend/hema/wechat/logs/20231207.log new file mode 100644 index 0000000..610120c --- /dev/null +++ b/extend/hema/wechat/logs/20231207.log @@ -0,0 +1,3 @@ +[2023-12-07 16:46:49] +"{\"errcode\":0,\"errmsg\":\"ok\"}" +