PHP微信公众开发笔记(一)

笔记是先写在印象笔记上的,晚上没事的时候整理整理。

PHP微信公众开发笔记系列

日期:2014.9.1

今天开始正式开始做班上的微信公众平台的开发者服务了。因为是第一次做这个,对PHP也不了解,所以一边学PHP,一边整理微信的公众平台,当做是自己的练手学习好了。

在登录了微信的公众平台之后,左边功能区的最底部就是开发者中心了:

在没有开启开发者服务前,这里面啥也没有。启用这个服务后,在网站上编辑的自动回复功能便取消了,用户跟微信公众平台的交互信息便会转到开发者接入的功能。废话少说,开启开发者功能需要配置好服务器配置:

我这里是已经配置好了的,主要就是两个信息:URL 和 Token。一个链接和一个验证标签。URL就是我们服务器的链接?(这个该咋形容呢?),在这里我是使用SAE来创建应用的,主要就是图它的免费(注册送了500云豆,据说是对普通用户来说是够用了的),注册链接:http://sae.sina.com.cn/ 注册好了之后,就可以干坏事啦。

一、开始配置服务器信息:

1、创建好了SAE帐号之后,就开始创建我们的应用了(服务器是否可以理解为一个应用?这块真是不熟悉,菜鸟一个),我的首页-控制台-应用管理-创建新应用:

点击创建之后:

二级域名就是到时候我们会用到的那个URL链接;

应用名-描述这些自己填写;

开发语言就选择 php;

应用类型选择 web应用;

创建过程中会验证独立的安全密码啥的,这个就是在注册的时候设置的,不是登录用的那个密码噢。

2、创建好了之后,便进入下一步了,将代码传上去

首先点击我们创建好的那个应用,在左边的功能区选择代码管理:

左边操作区就对应有操作显示了:

点击操作按钮,会有两个操作选择:上传代码-删除。选择上传代码,就可以了。到这一步,服务器这一块就这样了,然后我们需要整理我们要上传的代码了。

二、PHP代码

最简单的当然是下载微信开发者文档中提供的示例代码啦:http://mp.weixin.qq.com/mpres/htmledition/res/wx_sample.20140819.zip 这个链接便是直接下载了。

代码开始部分:

define("TOKEN","weixin") 在这里便出现了我们配置开发者服务时需要填写的TOKEN,在这里设置好然后在配置里填写正确好就可以了。因为我们开启开发者服务,首先需要做验证,所以一开始代码的执行情况是:

$wechatObj = new wechatCallbackapiTest();

$wechatObj->valid();

可以在示例代码中看到,valid函数执行的是检测工作,在检测完之后这个就不需要了,要改为相应的回复信息,所以在我们成功验证完,开启了开发者服务功能之后,这段代码需要修改为:

$wechatObj->responseMsg();

这个函数就是对应于执行响应回复的操作了。

跳转到responseMsg函数,PHP的语法看不懂,但是函数比较简单,可以大致了解一下:

这一段看到了welcome to wechat world 就差不多是响应用户输入的消息吧,看到msgType = "text",意思应该是用户发过来的是文本信息类型,然后返回就是这段欢迎语。随便改改,就能用这个php文件传到我们创建好的那个SAE应用上了,然后检测一下效果。

在这里我也有疑问:我将这个php文件重命名为xxx.php,然后压缩为xxx.zip包,执行上面提到的那个上传代码操作之后,设置好开发者的URL和TOKEN,提示的是服务器没有响应操作,试了几遍都没有效果,后来我点开编辑代码:

发现里头的文件除了我的那个xxx.php文件之外,还有一个index.php,然后网上查到类似的一个资料是说zip包要命名为index.zip,然后我们的php文件也需要命名为index.php,这样才可以。照着这个做了一次修改,确实是成功了,但是为什么要这样呢?

设置好了之后,检测--随便发送一个文本消息给公众号,便会返回我们设置好的返回信息了。至此,开启开发者服务便成功了,之后的进一步折腾就开始了。

时间: 2024-10-12 21:32:24

PHP微信公众开发笔记(一)的相关文章

PHP微信公众开发笔记(二)

PHP微信公众开发笔记系列 日期:2014.9.1 需求分析: 在成功的开启了微信开发者服务之后,我们便需要开始做响应用户操作的功能了.其实做微信公众平台,当初的目的我就是想做成一个服务平台,因为刚大学毕业,同学各奔东西.有的时候可能我们会到一个陌生的城市去,那时可能就会想啊,这个城市有班上的同学在么?这时掏出手机,点开服务号输入这个城市名,就会返回一串信息,假如有同学在这个城市,就会列出联系信息之类的.当然也许会说,既然是熟悉的同学,那么肯定会知道联系方式之类的,还需要这样多此一举么.而我的考

PHP微信公众开发笔记(三)

PHP微信公众开发笔记系列 日期:2014.9.2 今天主要的任务是昨天提到的那个处理缓存信息的问题,我需要保存一些消息用来做二次判断. 首先,记录一些PHP语法知识吧. 1.PHP中字符串的连接语法: 在lua中,两个字符串的连接很简单,加入有两个字符串 "aaa";"bbb"; 需要将这两个字符串连接起来,只需要用两个句点 .. 便可以了:"aaa" .. "bbb"; 这里要注意,字符串与句点直接需要有空格,没有空格会报

PHP微信公众开发笔记(五)

PHP微信公众开发笔记系列 日期:2014.9.3 今天做了身份验证的功能,然后完善了下搜索功能.其实主要的是将整个代码结构整理了一番,应该可以说是模块化设计吧. 模块化设计我们的公众号. 因为我们之前提的功能需求中有: 1.菜单--查询功能.我考虑到后期功能的扩展,就想将这些分模块来实现:菜单模块(这样,今后我们需要添加新的菜单功能,可以直接在这个模块里操作,这样修正和维护也简单,在考虑到后期可能会分工协作的时候各开发者之间不会产生冲突): 2.数据库模块(这里就主要是负责数据库相关的工作,如

PHP微信公众开发笔记(六)

PHP微信公众开发笔记系列 日期:2014.9.4 今天主要是完善了搜索,加入了管理员模块,优化了身份验证,将学生信息管理封装为了一个类(整这个真是好累呀,主要是数据库操作那里语法老是出问题,一直是各种小问题) 感受: PHP开发没有断点.不能及时打印log真是好累呀(我是用sublime写的,然后直接微信公众号调试,累屎我了),错误信息经常不能及时发觉.或者说有些问题能通过断点排除掉了没能够排除.但是也说明了,我写代码还是太马虎了啊. 2014.9.10整理笔记: 写这个笔记的时候,在赶功能,

PHP微信公众开发笔记(七)

PHP微信公众开发笔记系列 日期:2014.9.6 这篇日记是补昨天的,昨天没来得及写: 主要实现的功能:模糊检索.问答系统.帮助系统 修复了:_SESSION 的id 调整了验证机制 要注意的:mysql的语法问题.mysql的模糊匹配.PHP的关联数组好像用count计算的话其大小会有原有数据的两倍大(即数组中只有两个数据,count会得到4,这个需要再验证,好像是用到了foreach就出现了这个问题) 学到了:PHP中数组的操作 2014.9.10整理笔记: 写这个笔记的时候,在赶功能,所

PHP微信公众开发笔记(八)

PHP微信公众开发笔记系列 日期:2014.9.6 今天主要要做:建立关键词数据库.超时机制.优化的关键词匹配.表情信息数据库 要注意的:PHP echo之后并没有返回?还会继续执行?? 2014.9.11整理笔记: 写这个笔记的时候,在赶功能,所以也就是简单的记几笔当时的工作内容,现在功能开发得差不多了,就来整理之前的笔记.当时就很简单的记录了上文的那几句. 这天是周六,不加班了在租的房子里歇着.因为要过中秋了,在深圳的姐这天会过来我这边过节,所以这天也没多少时间来写功能.早上早起去跑步,然后

PHP微信公众开发笔记(九)

PHP微信公众开发笔记系列 日期:2014.9.9 中秋假期除了周六那天整了整,就没怎么动过了.今天上班主要是把既定的两个开发目标完成了:"八卦"."回忆"两个模块,这两个东西也很简单,也主要是涉及到数据库的操作而已.然后以图文形式回复就可以了.所以数据库中主要是保存了:文章标题.文章跳转连接.图片链接这三个字段信息. 2014.9.11整理笔记: 写这个笔记的时候,在赶功能,所以也就是简单的记几笔当时的工作内容,现在功能开发得差不多了,就来整理之前的笔记.当时就很

PHP微信公众开发笔记(十)

PHP微信公众开发笔记系列 日期:2014.9.10 在新浪SAE上用Storage存储资源,如果选择了资源防盗链的选项,那么将设置了防盗链的图片用作公众平台图文链接的封面,将显示不出图片. 2014.9.11整理笔记: 写这个笔记的时候,在赶功能,所以也就是简单的记几笔当时的工作内容,现在功能开发得差不多了,就来整理之前的笔记.当时就很简单的记录了上文的那几句. 主要是图文链接的那个封面问题.如果我直接用微信素材库里面的图片作为连接,那么图文链接的封面图片是显示不出来的.这个问题困扰了我好久,

微信公众开发URL和token填写详解

方法/步骤 作为一名微信公众号开发者,别人进入你的微信公众号,肯定会看见某些网页,或者给你发某些信息,你需要实时自动回复,所以你需要一个24小时为用户服务的服务器.我们所要填写的url就是你提供的服务器的地址,前提是这个服务器的地址你要能够访问,且能够控制.而token是用来验证的.   然后你需要一个服务器,服务器可以自己购买,也能用新浪sae,百度bae.方法是进入其开发者中心,注册一个开发者账号.并进行实名认证!(没有进行实名认证的小伙伴们是无法成功的).下面我们使用新浪sae做为例子来进