叶炳拥
- 叶炳拥 收藏了教程Yii 2.0 rules 验证规则大全
- 叶炳拥 赞了回答
个人觉得这个智力、领悟能力都有关系 反正我是看不下去
- 叶炳拥 收藏了教程Yii 行为简单应用
- 叶炳拥 提出了问题ar的组合条件查询问题
- 叶炳拥 赞了回答
`<?php
namespace backend\controllers;use Yii;
use \yii\web\Controller;
use yii\web\HttpException;
use backend\models\WechatUser;
use EasyWeChat\Server\BadRequestException;class WebchatController extends Controller
{public $enableCsrfValidation = false; //取消_csrf 数据验证 /** * actionIndex 微信验证 * @return mixed */ public function actionIndex() { try{ $app = Yii::$app->wechat->getApp(); $server = $app->server; $server->setMessageHandler(function ($message) { // $message->FromUserName // 用户的 openid // $message->MsgType // 消息类型:event, text.... switch ($message->MsgType) { case 'event': //订阅公众号 if($message->Event == 'subscribe'){ return $this->subscribe($message); } //取消订阅事件 if($message->Event == 'unsubscribe'){ return $this->unsubscribe($message); } //已经订阅事件 if($message->Event == 'SCAN'){ //return $this->unsubscribe($message); } return '收到事件消息'; break; case 'text': return '收到文字消息'; break; case 'image': return '收到图片消息'; break; case 'voice': return '收到语音消息'; break; case 'video': return '收到视频消息'; break; case 'location': return '收到坐标消息'; break; case 'link': return '收到链接消息'; break; // ... 其它消息 default: return '收到其它消息'; break; } }); $response = $server->serve(); return $response->send(); }catch (BadRequestException $e){ if($e->getMessage() === 'Invalid request.'){ throw new HttpException(404); } } } /** * subscribe 微信订阅事件 * @param $message */ private function subscribe($message) { $userInfo = WechatUser::findUserByOpenId($message->FromUserName); if(!$userInfo){ //添加关注的用户到数据库中 $app = Yii::$app->wechat->getApp(); $userService = $app->user; $userInfo = $userService->get($message->FromUserName); if($userInfo->subscribe){ Yii::$app->db->createCommand()->insert(WechatUser::tableName(),[ 'openid' => $userInfo->openid, 'unionid' => $userInfo->unionid, 'nickname' => $userInfo->nickname, 'sex' => $userInfo->sex, 'headimgurl' => $userInfo->headimgurl, 'country' => $userInfo->country, 'province' => $userInfo->province, 'city' => $userInfo->city, 'language' => $userInfo->language, ])->execute(); } }else{ $userInfo->sataus = 10; $userInfo->save(); } return Yii::$app->params['WeChatMessage']['subscribe']; } /** * unsubscribe 微信取消订阅事件 * @param $message */ private function unsubscribe($message) { $userInfo = WechatUser::findUserByOpenId($message->FromUserName); if($userInfo){ $userInfo->status = 0; $userInfo->save(); } return ''; }
}`
你好,为啥前台的样式都没有加载进来??是路径问题吗
- 叶炳拥 2017-10-02 已签到连续签到1天,获得了5个金钱
- 叶炳拥 评论了源码 YiiCms企业站管理系统
插入一个菜单栏,就炸了,后面去数据库又删了,还是一样,后台就不能用了