试一试老贼的关注公众号后接收多图文欢迎界面。连接:http://www.zhongyaofang.cn/combat_power/weixin_jiaocheng_vol10.html
修改前一篇博文《记录一下我的微信开发配置测试过程——接收欢迎信息》中文件 wx_token_read.php 内容为:
<?php
//装载模板文件
include_once("wx_tpl.php");
//获取微信发送数据
$postStr = $GLOBALS["HTTP_RAW_POST_DATA"];
//返回回复数据
if (!empty($postStr)){
//解析数据
$postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
//发送消息方ID
$fromUsername = $postObj->FromUserName;
//接收消息方ID
$toUsername = $postObj->ToUserName;
//消息类型
$form_MsgType = $postObj->MsgType;
//事件消息
if($form_MsgType=="event")
{
//获取事件类型
$form_Event = $postObj->Event;
//订阅事件
if($form_Event=="subscribe")
{
//回复欢迎文字消息
//$msgType = "text";
//$contentStr = "感谢您关注老狼的微信测试![愉快]\n\n想学公众平台使用的朋友请输入“跟我学”![玫瑰]";
//$resultStr = sprintf($textTpl, $fromUsername, $toUsername, time(), $msgType, $contentStr);
//回复欢迎文字消息
$resultStr.= "
<xml>\n
<ToUserName><![CDATA[".$fromUsername."]]></ToUserName>\n
<FromUserName><![CDATA[".$toUsername."]]></FromUserName>\n
<CreateTime>".time()."</CreateTime>\n
<MsgType><![CDATA[news]]></MsgType>\n
<ArticleCount>5</ArticleCount>\n
<Articles>\n";
// 添加4条图文列表消息
$resultStr.= "
<item>\n
<Title><![CDATA[地图切片]]></Title>\n
<Description><![CDATA[图片覆盖层切片]]></Description>\n
<PicUrl><![CDATA[11.jpg]]></PicUrl>\n
<Url><![CDATA[http://blog.csdn.net/bq_cui/article/category/1515961]]></Url>\n
</item>\n";
$resultStr.= "
<item>\n
<Title><![CDATA[百度]]></Title>\n
<Description><![CDATA[百度搜索]]></Description>\n
<PicUrl><![CDATA[22.jpg]]></PicUrl>\n
<Url><![CDATA[http://www.baidu.com]]></Url>\n
</item>\n";
$resultStr.= "
<item>\n
<Title><![CDATA[Discuz]]></Title>\n
<Description><![CDATA[百度搜索]]></Description>\n
<PicUrl><![CDATA[33.jpg]]></PicUrl>\n
<Url><![CDATA[http://www.baidu.com]]></Url>\n
</item>\n";
$resultStr.= "
<item>\n
<Title><![CDATA[特朗普]]></Title>\n
<Description><![CDATA[百度搜索]]></Description>\n
<PicUrl><![CDATA[44.jpg]]></PicUrl>\n
<Url><![CDATA[http://www.baidu.com]]></Url>\n
</item>\n";
$resultStr.= "
</Articles>\n
<FuncFlag>0</FuncFlag>\n
</xml>";
$logfile = fopen("log.txt", "w") or die("Unable to open file!");
fwrite($logfile, $resultStr);
fclose($logfile);
echo $resultStr;
exit;
}
}
}
else
{
echo "";
exit;
}
?>
加关注后,收不到欢迎界面,一片空白。用服务器写log文件的方式,没看出有什么错误。下面是看到的log.txt文件内容:
<xml>
<ToUserName><![CDATA[oC_1xwUieMo8ycPBsJ7qvy8IFooQ]]></ToUserName>
<FromUserName><![CDATA[gh_a2aef6c2c717]]></FromUserName>
<CreateTime>1478774841</CreateTime>
<MsgType><![CDATA[news]]></MsgType>
<ArticleCount>5</ArticleCount>
<Articles>
<item>
<Title><![CDATA[地图切片]]></Title>
<Description><![CDATA[图片覆盖层切片]]></Description>
<PicUrl><![CDATA[11.jpg]]></PicUrl>
<Url><![CDATA[http://blog.csdn.net/bq_cui/article/category/1515961]]></Url>
</item>
<item>
<Title><![CDATA[百度]]></Title>
<Description><![CDATA[百度搜索]]></Description>
<PicUrl><![CDATA[22.jpg]]></PicUrl>
<Url><![CDATA[http://www.baidu.com]]></Url>
</item>
<item>
<Title><![CDATA[Discuz]]></Title>
<Description><![CDATA[百度搜索]]></Description>
<PicUrl><![CDATA[33.jpg]]></PicUrl>
<Url><![CDATA[http://www.baidu.com]]></Url>
</item>
<item>
<Title><![CDATA[特朗普]]></Title>
<Description><![CDATA[百度搜索]]></Description>
<PicUrl><![CDATA[44.jpg]]></PicUrl>
<Url><![CDATA[http://www.baidu.com]]></Url>
</item>
</Articles>
<FuncFlag>0</FuncFlag>
</xml>
下面使用方倍工作室的调试工具 http://debug.fangbei.org/
我使用Firefox进行调试,提示如下:
原来是 第35行出错了 $resultStr.= " 应该为 $resultStr = "
修改后再关注,得到如下结果:
可能图片路径问题,尝试改为完整路径,并修改图片文件名:
<?php
//装载模板文件
include_once("wx_tpl.php");
//获取微信发送数据
$postStr = $GLOBALS["HTTP_RAW_POST_DATA"];
//返回回复数据
if (!empty($postStr)){
//解析数据
$postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
//发送消息方ID
$fromUsername = $postObj->FromUserName;
//接收消息方ID
$toUsername = $postObj->ToUserName;
//消息类型
$form_MsgType = $postObj->MsgType;
//事件消息
if($form_MsgType=="event")
{
//获取事件类型
$form_Event = $postObj->Event;
//订阅事件
if($form_Event=="subscribe")
{
//回复欢迎文字消息
//$msgType = "text";
//$contentStr = "感谢您关注老狼的微信测试![愉快]\n\n想学公众平台使用的朋友请输入“跟我学”![玫瑰]";
//$resultStr = sprintf($textTpl, $fromUsername, $toUsername, time(), $msgType, $contentStr);
//回复欢迎文字消息
$resultStr = "
<xml>\n
<ToUserName><![CDATA[".$fromUsername."]]></ToUserName>\n
<FromUserName><![CDATA[".$toUsername."]]></FromUserName>\n
<CreateTime>".time()."</CreateTime>\n
<MsgType><![CDATA[news]]></MsgType>\n
<ArticleCount>5</ArticleCount>\n
<Articles>\n";
// 添加4条图文列表消息
$resultStr.= "
<item>\n
<Title><![CDATA[地图切片]]></Title>\n
<Description><![CDATA[把大图片覆盖到百度地图上]]></Description>\n
<PicUrl><![CDATA[http://www.1hwj.net/wei/aa.jpg]]></PicUrl>\n
<Url><![CDATA[http://blog.csdn.net/bq_cui/article/category/1515961]]></Url>\n
</item>\n";
$resultStr.= "
<item>\n
<Title><![CDATA[百度]]></Title>\n
<Description><![CDATA[一个搜索引擎]]></Description>\n
<PicUrl><![CDATA[http://www.1hwj.net/wei/a22.jpg]]></PicUrl>\n
<Url><![CDATA[http://www.baidu.com]]></Url>\n
</item>\n";
$resultStr.= "
<item>\n
<Title><![CDATA[Discuz]]></Title>\n
<Description><![CDATA[记录我的discuz学习过程]]></Description>\n
<PicUrl><![CDATA[http://www.1hwj.net/wei/a33.jpg]]></PicUrl>\n
<Url><![CDATA[http://blog.csdn.net/bq_cui/article/category/6081006]]></Url>\n
</item>\n";
$resultStr.= "
<item>\n
<Title><![CDATA[小猫统计]]></Title>\n
<Description><![CDATA[一个高速数据操作工具,强大!]]></Description>\n
<PicUrl><![CDATA[http://www.1hwj.net/wei/a44.jpg]]></PicUrl>\n
<Url><![CDATA[http://blog.csdn.net/bq_cui/article/category/5810591]]></Url>\n
</item>\n";
$resultStr.= "
<item>\n
<Title><![CDATA[lazarus]]></Title>\n
<Description><![CDATA[优秀的、开源的pascal快速开发工具!]]></Description>\n
<PicUrl><![CDATA[http://www.1hwj.net/wei/a55.jpg]]></PicUrl>\n
<Url><![CDATA[http://blog.csdn.net/bq_cui/article/category/1170895]]></Url>\n
</item>\n";
$resultStr.= "
</Articles>\n
<FuncFlag>0</FuncFlag>\n
</xml>";
//$logfile = fopen("log.txt", "w") or die("Unable to open file!");
//fwrite($logfile, $resultStr);
//fclose($logfile);
echo $resultStr;
exit;
}
}
}
else
{
echo "";
exit;
}
?>
再次在手机中关注: