Thinkphp框架----微信公众测试号开发
最开始的一个步骤。注册一个微信公众测试号。URL:https://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login;
接口配置的信息,对新手来说最难的就是找错,一句配置失败,然后什么信息都没有,其实,是有的,
当输入的URL 一直配置失败的时候,可以复制当前的URL,再到网页访问一下,就可以发现是哪里报错了。
处理这一步的话:
1。需要一个云服务器,推荐阿里云。一个我是华南的,一个月61.还可以。百度云服务器没用过,新浪云不要和云空间弄混了,云空间不可以用数据库,到后面有些麻烦,阿里云简单也稳定,项目和平时实验都可以。
1)百度阿里云,找到云服务器ECS,
2)买买买的就不用我说了
3)URL放的就是你微信的控制器的那个方法 比如 :http://165.265.32.02/index.php/App/Wechat/index
解析:165.265.32.02 服务器的公网ID,一般用服务器就不用域名也可以
index.php/App/控制器/方法 THINKPHP的基本
4)现在点提交的话肯定也是配置失败,先提交下面的代码,再回来确定提交。
2。上传文件到服务器。我用的是FZ。感觉还是挺好用的,网页管理后台用WDCP。(不知道直接百度就行,再不知道欢迎麻烦我。)把整个文件Thinkphp框架 上传到服务器 一般默认是在/www/web/default/下。也可以自己更改
3.因为我是用Gaoming13的SDK微信接口,url:https://github.com/gaoming13/wechat-php-sdk
1) 将wechat-php-sdk下载,然后将SDK内 src
文件夹重命名为 Gaoming13
, 拷贝至 ThinkPHP/Library/
下即可使用 Wechat
和 Api
类库。
2)在THINKPHP 控制器里use 这个文件
3)可以先做一个简单的关键字回复
上代码
public function index()
{ $wechat = new Wechat(array(
// 开发者中心-配置项-AppID(应用ID)
'appId' => '你的appid',
// 开发者中心-配置项-服务器配置-Token(令牌)
'token' => '你的token'
// 开发者中心-配置项-服务器配置-EncodingAESKey(消息加解密密钥)
// 可选: 消息加解密方式勾选 兼容模式 或 安全模式 需填写 )); // 获取微信消息
$msgObj = $wechat->serve(); $data = json_encode($msgObj); $map['xml'] = $data;
M('tmp')->add($map);
// var_dump($msgObj); //判断用户是否进行一个关注
if( $msgObj->MsgType == 'event' && $msgObj->Event == 'subscribe' ){ $wechat->reply('欢迎光临234'); } //判断用户发送过来的是不是?
if( $msgObj->Content == '?' ){
//回复一个文本消息,文本消息的内容是"你好"
$wechat->reply("你好");
} //图文,回复图文消息
if( $msgObj->Content == '图文' ){ $data = M('newss')->select();//需要在服务器里面有个数据库
$reply['type'] = 'news';
$reply['articles'] = M('new')->field('title,descp as description,url,picurl')->select(); $wechat->reply($reply);
49 } }
总结。代码是死的,思维是活,期间会遇见很多问题,比如我调用Gaoming13的SDK的时候版本不对,数组不能用 [] 表示,找了一晚才找到这个问题.不要气馁,今晚先讲到这里,有问题留言给我。
Thinkphp框架----微信公众测试号开发的更多相关文章
- Thinkphp框架----微信公众测试号开发(2)
---恢复内容开始--- 最近忙着投简历找工作.现在继续更 微信回复图文设置. 效果: 页面HTML需要一个form表单 简单效果: 接下来是数据库 字段:id title(标题) text(描述) ...
- thinkphp 实现微信公众号开发(一)
打算用php做一个微信公众号管理平台.用thinkphp框架 教程上面是是应用下面会自动生成Lib文件夹.但是我的3.2.3自动生成目录不一样 我修改了我项目文件夹下面的IndexController ...
- thinkphp 实现微信公众号开发(二)--实现自定义菜单
IndexController.class.php <?php namespace Home\Controller; use Think\Controller; class IndexContr ...
- 微信公众号开发系列-13、基于RDIFramework.NET框架整合微信开发应用效果展示
1.前言 通过前面一系列文章的学习,我们对微信公众号开发已经有了一个比较深入和全面的了解. 微信公众号开发为企业解决那些问题呢? 我们经常看到微信公众号定制开发.微信公众平台定制开发,都不知道这些能给 ...
- nodejs 中koa框架下的微信公众号开发初始篇
最近在搞微信公众号开发,后端采用的是nodejs下的koa框架,初识后端的菜鸟,自己搞难度太大了,网上找了很多文章,采用的中间件大都是express框架下的,不过好在爬了许多坑之后总算看见点曙光了,遂 ...
- 微信公众账号开发教程(二) 基础框架搭建——转自http://www.cnblogs.com/yank/p/3392394.html
上一章,我们已经初步讲解了微信公众账号开发的基本原理,今天我们来探索设计实现. 首先我们设计了模块层次图,当然图中只是给出一种实现方式,不局限于此.具体见下图. 主要功能介绍如下: 1)请求接口层.处 ...
- 微信公众号开发中遇到的几个bug
一.测试自定义菜单接口时中文菜单名显示为null 设置的中文菜单名,中文未经过编码和解码过程,设置的中文菜单名在最后的微信服务器返回的json格式数据中显示为null. 解决办法:将中文先用uneco ...
- 微信公众号开发C#系列-1、微信公众平台注册
微信公众号简介 微信公众号分为服务号.订阅号.企业号,订阅号可以个人申请,服务号和企业号要有企业资质才可以. 我们所说的微信公众号开发主要指的是公众号的账号类型,公众号的账号类型分为订阅号.服务号.企 ...
- 微信公众号开发C#系列-4、获取接口调用凭证
概述 获取接口调用凭证实质就是获取access_token.在微信接口开发中,许多服务的使用都离不开Access Token,Access Token相当于打开这些服务的钥匙,正常情况下会在7200秒 ...
随机推荐
- Java知识点:条件编译
条件编译 一般情况下,源程序中所有的行都参加编译.但有时希望对其中一部分内容只在满足一定条件下才进行编译,即对一部分内容指定编译条件,这就是“条件编译”(conditional compile). ...
- liunx环境下的mysql数据库配置文件my.conf内的参数含义
[client]port = 3306socket = /tmp/mysql.sock [mysqld]port = 3306socket = /tmp/mysql.sock basedir = /u ...
- Android中FragmentPagerAdapter对Fragment的缓存(二)
上一篇我们谈到了,当应用程序恢复时,由于FragmentPagerAdapter对Fragment进行了缓存的读取,导致其并未使用在Activity中新创建的Fragment实例.今天我们来看如何解决 ...
- [SharePoint 2010]关于基于声明(Claims)的用户认证模式
转:http://blog.csdn.net/zw_2011/article/details/7417132 SharePoint 2010在用户认证模式上,较之以前的版本有了非常大的改变.在Shar ...
- ASP.NET 经典60道面试题
转:http://bbs.chinaunix.net/thread-4065577-1-1.html ASP.NET 经典60道面试题 1. 简述 private. protected. public ...
- Codeforces 167B Wizards and Huge Prize(概率dp)
题意: n个人,开始有一个容量为k得背包,击败一个人背包可以获得一定容量或得到一个财富(放入背包内),给出击败每个人的概率,求至少击败l个人,且背包容量大于获得的总财富值的概率 分析: 状态好确定,d ...
- Long Dominoes(ZOJ 2563状压dp)
题意:n*m方格用1*3的方格填充(不能重叠)求有多少种填充方法 分析:先想状态,但想来想去就是觉得不能覆盖所有情况,隔了一天,看看题解,原来要用三进制 0 表示横着放或竖放的最后一行,1表示竖放的中 ...
- NEUOJ711 异星工厂 字典树+贪心
题意:你可以收集两个不相交区间的权值,区间权值是区间异或,问这两个权值和最大是多少 分析:很多有关异或求最大的题都是利用01字典树进行贪心,做这个题的时候我都忘了...最后是看别人代码的时候才想起来这 ...
- 【转载】【内存对齐(二)】__declspec( align(#) )的用法和大小计算
转自:http://www.cppblog.com/deercoder/archive/2011/03/13/141747.html 感谢作者! 在上面讲到了关于pack的内存对齐和计算方法,这里继续 ...
- ASP.NET MVC之Html.RenderAction
WEB窗体模式开发惯了,切入MVC模式,好多东西都不懂,每一步都要查资料. 初步得来的一些知识点体会是: _Layout.cshtml就相当于母版页 然后partical视图(部分视图)就是用户控件. ...