基于微信公众平台的信息查询系统开发(附件)【字数:10428】


首先需要在微信公众平台网站上注册一个公众号,选择注册订阅号,在完成注册后,进入账号的后台管理界面,在左侧目录中点击进入开发模式,点击修改配置,填写各项参数,进行接口配置。服务器地址URL是接收微信消息和事件的接口。其中Token可以任意填写,用作生成签名(该Token会和接口URL中包含的Token进行比对,从而验证安全性)。EncodingAESKey由开发者手动填写或随机生成,用作消息体加解密密钥[67]。
开发者提交信息后,微信服务器将发送GET请求到我们之前所填写的服务器地址URL上,GET请求携带的参数如表41所示。
表41 GET请求的参数
参数
描述
signature
微信加密签名,signature结合了开发者填写的token参数和请求中的timestamp参数、nonce参数
timestamp
时间戳
nonce
随机数
echostr
随机字符串
校验的代码如下所示[89]:
private function checkSignature()
{
$signature = $_GET["signature"];
$timestamp = $_GET["timestamp"];
$nonce = $_GET["nonce"];
$token = TOKEN;
$tmpArr = array($token, $timestamp, $nonce);
sort($tmpArr);
$tmpStr = implode($tmpArr);
$tmpStr = sha1($tmpStr);
if($tmpStr == $signature){ return true;}
else{
return false; *好棒文|www.hbsrm.com +Q: &351916072& 

}
}
在接入微信平台后,用户向公众号发送消息时,服务器配置的URL将接收来自微信服务器的消息和事件,此时开发者可以根据自身的需要对发送来的消息和事件进行响应。当用户向公众号发送消息时,对于公众号而言,消息的发送者的微信号是经过加密的OpenID。对于不同的公众号,不同的用户的OpenID也是不同的[10]。
4.2服务器部署
4.2.1SAE云服务器申请
本系统是基于新浪SAE平台来部署服务器的,首先需要进行注册,接着登录该账号,进入SAE控制平台,创建一个新的应用,选择开发语言为PHP,运行环境为标准环境,语言版本5.3,创建一个二级域名,填写好其它参数并提交即可完成创建[1112]。
4.2.2代码上传
本设计选择TortoiseSVN作为系统的代码管理软件,第一步,创建一个文件夹作为本地工作目录,第二步,从新浪云的SVN仓库下载应用的全部版本代码,这里填写的仓库路径为https://svn.sinacloud.com/sjuxuqc,选择HEAD revision 版本即最新版本,然后确认,应用的代码会出现在我们刚刚创建的文件夹中,此时图标为绿色的勾,在本地可以使用编辑器对刚才下载的应用代码进行编辑,然后保存,此时修改后的文件会变为红色。在修改后的文件图标上点击右键,选择SVN commit并确认,就可以完成代码上传[13]。
4.2.3MySQL数据库创建
在SAE中进入之前创建的应用,在控制台中选择数据库与缓存服务共享型MySQL进入创建页面,选择数据库类型,选择MySAM,然后初始化MySQL,接下来进入PHPMyAdmin管理界面,然后按照表31、32、33、34所列进行数据库部署[14]。
4.2.4连接MySQL数据库
连接 MySQL数据库的代码如下:
$con=mysql_connect(SAE_MYSQL_HOST_M.:.SAE_MYSQL_PORT,SAE_MYSQL_USER,SAE_MYSQL_PASS);
if (!$con){
echo"连接失败!";
}
$sql = "SELECT * FROM `appname`.`user` ";?
$query=mysql_query($sql);
while($row=mysql_fetch_array($query))
{
echo "name".:.$row[name]." "."pwd".:.$row[pwd]."
";
}
mysql_close($con);
4.3功能模块的实现
4.3.1自动回复功能实现
自动回复功能流程图如图41所示。当用户关注该公众号时系统会自动回复消息。
/
图41 自动回复功能流程图
自动回复功能代码如下:
switch($msgType){

版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/dzxx/dzkxyjs/217.html

好棒文