微信首页responsemsg()
public function responseMsg()
{
//get post data, May be due to the different environments
$postStr = $GLOBALS["HTTP_RAW_POST_DATA"];
//extract post data
if (!empty($postStr)){
$postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
$fromUsername = $postObj->FromUserName;
$toUsername = $postObj->ToUserName;
$MsgType = $postObj->MsgType;
$time = time();
$textTpl ="<xml>
<ToUserName><![CDATA[%s]]></ToUserName>
<FromUserName><![CDATA[%s]]></FromUserName>
<CreateTime>%s</CreateTime>
<MsgType><![CDATA[%s]]></MsgType>
<Content><![CDATA[%s]]></Content>
<FuncFlag>0</FuncFlag>
</xml>";
switch($MsgType)
{
case"text":
$resultStr = $this->handleText($postObj);
break;
case"link":
$resultStr = $this->handleLink($postObj);
break;
case"event":
$resultStr = $this->handleEvent($postObj);
break;
case"image":
$resultStr = $this->handleImage($postObj);
break;
case"voice":
$resultStr = $this->handleVoice($postObj);
break;
case"video":
$resultStr = $this->handleVideo($postObj);
break;
case"location":
$resultStr = $this->responseLocation($postObj);
break;
default:
break;
}
}else {
echo"";
exit;
}
}
////判断点击事件
public function handleEvent($postObj)
{
$FromUserName = $postObj->FromUserName;
$ToUserName = $postObj->ToUserName;
$MsgType = $postObj->MsgType;
$Event = $postObj->Event;
$CreateTime = $postObj->CreateTime;
require("db.php");
//$dbh = mysql_connect("localhost:3306","root","root");
//mysql_select_db("***");
//mysql_query("set names UTF8");
switch ($postObj->Event)
{
case"subscribe":
$sqlsubscribe ="select * from account where OpenId = '".trim($FromUserName)."'";
$connsubscribe = mysql_query($sqlsubscribe,$dbh);
$resultsubscribe = mysql_fetch_assoc($connsubscribe);
$FakeID = file_get_contents("http://bauschlomb.ruisheng.info/success.php");
if($resultsubscribe){
$sqlinTu ="update account set Enable = 0,CreateTime = $CreateTime,FakeId ='".trim($FakeID)."' where OpenID ='".trim($FromUserName)."'";
$connTu = mysql_query($sqlinTu,$dbh);
}else{
////如果数据库没有这个用户的记录
$insertsubscribe ="insert into account(OpenID,Enable,State,FakeId,CreateTime) values('".trim($FromUserName)."',0,10,'".trim($FakeID)."',$CreateTime)";
$insertsubscribe = mysql_query($insertsubscribe,$dbh);
}
$sqlsub ="insert into message(FromUserName,ToUserName,MsgType,Event,CreateTime) values ('".trim($FromUserName)."','".trim($ToUserName)."','event','subscribe',$CreateTime)";
$resultsub = mysql_query($sqlsub,$dbh);
///$resultmsg = StaticMethod::getUserInfoBySub($FromUserName,$CreateTime);
///$resultStr = $this->responseEvent($postObj,$contentStr);
$resultStr = $this->responseSubscribe($postObj);
break;
case"unsubscribe":
$contentStr ="取消关注微信号:!查看更多内容!!!.";///////这里是最先开始加关注的时候,发出的信息
$sqlunmsg ="insert into message(FromUserName,ToUserName,MsgType,Event,CreateTime) values ('".trim($FromUserName)."','".trim($ToUserName)."','".trim($MsgType)."','unsubscribe',$CreateTime)";
$resultunmsg = mysql_query($sqlunmsg,$dbh);
$sqlinTu ="update account set Enable = 1 where OpenId ='".trim($FromUserName)."'";
$connTu = mysql_query($sqlinTu,$dbh);
///StaticMethod::delUserInfoBySub($FromUserName,$CreateTime);
$resultStr = $this->responseEvent($postObj,$contentStr);
break;
case"CLICK":
switch ($postObj->EventKey)
{
case"V1001_Product011":
$contentStr = '';
$resultStr = $this->responseEvent($postObj, $contentStr);
break;
case"V1001_Product012":
$contentStr = '增减。';
$resultStr = $this->responseEvent($postObj, $contentStr);
break;
case"V1001_Product013":
$contentStr = 'bb';
$resultStr = $this->responseEvent($postObj, $contentStr);
break;
case"V1001_Product014":
$contentStr ='b一次2~3滴。';
$resultStr = $this->responseEvent($postObj, $contentStr);
break;
case"V1001_Personal021":
$contentStr ="";
$resultStr = $this->responseEvent($postObj, $contentStr);
break;
case"V1001_Personal022":
$contentStr ="";
$resultStr = $this->responseEvent($postObj, $contentStr);
break;
case"V1001_Personal023":
$contentStr ="";
$resultStr = $this->responseEvent($postObj, $contentStr);
break;
case"V1001_Personal024":
$contentStr ="请回复【认证】,即可开启认证流程";
$resultStr = $this->responseEvent($postObj, $contentStr);
break;
case"V1001_Personal025":
$contentStr ="请回复【学分查询】,即可对自己当前学分情况进行了解";
$resultStr = $this->responseEvent($postObj, $contentStr);
break;
case"V1001_Activity031":
$contentStr ="";
$resultStr = $this->responseEvent($postObj, $contentStr);
break;
case"V1001_Activity032":
///$contentStr ="敬请期待";
///$resultStr = $this->responseEvent($postObj, $contentStr);
$this->responseMatchGuess($postObj);
break;
case"V1001_Activity033":
//$contentStr ="活动信息";
//$resultStr = $this->responseEvent($postObj, $contentStr);
$resultStr = $this->responseGrid($postObj);
break;
case"V1001_Activity034":
//$contentStr ="活动信息";
//$resultStr = $this->responseEvent($postObj, $contentStr);
$resultStr = $this->responseMood($postObj);
break;
case"V1001_Activity035":
$contentStr ="第二期考试活动已结束";
$resultStr = $this->responseEvent($postObj, $contentStr);
///$this->responseExam($postObj);
break;
default:
$contentStr ="欢迎关注微课堂nn";
$resultStr = $this->responseEvent($postObj, $contentStr);
break;
}
}
}
///针对Event事件的文本回复(正确)
public function responseEvent($postObj,$contentStr)
{
$time = time();
$textTpl ="<xml>
<ToUserName><![CDATA[%s]]></ToUserName>
<FromUserName><![CDATA[%s]]></FromUserName>
<CreateTime>%s</CreateTime>
<MsgType><![CDATA[text]]></MsgType>
<Content><![CDATA[%s]]></Content>
<FuncFlag>0</FuncFlag>
</xml>";
$resultStr = sprintf($textTpl, $postObj->FromUserName, $postObj->ToUserName, $time,$contentStr);
echo $resultStr;
exit();
}
////图片
public function responseSubscribe($postObj)
{
$postStr = $GLOBALS["HTTP_RAW_POST_DATA"];
///图文混排
if (!empty($postStr)){
$fromUsername = $postObj->FromUserName;
$toUsername = $postObj->ToUserName;
$CreateTime =$postObj->CreateTime;
$time = time();
$msgType ="news";
$title ="欢迎您 !";
$description ="请回复【认证】马上进行会员认证,成功绑定就能获得学分,先到先得!早到多得!点击“阅读全文”有惊喜哦。";
$textTpl ="<xml>
<ToUserName><![CDATA[%s]]></ToUserName>
<FromUserName><![CDATA[%s]]></FromUserName>
<CreateTime>%s</CreateTime>
<MsgType><![CDATA[%s]]></MsgType>
<Content><![CDATA[%s]]></Content>
<ArticleCount>1</ArticleCount>
<Articles>
<item>
<Title><![CDATA[".$title."]]></Title>
<Description><![CDATA[".$description."]]></Description>
<PicUrl><![CDATA[http://***.info/images/mmexport2.jpg]]></PicUrl>
<Url><![CDATA[http://****.info/yyy.htm]]></Url>
</item>
</Articles>
<FuncFlag>1</FuncFlag>
</xml>";
$resultStr = sprintf($textTpl, $fromUsername, $toUsername, $CreateTime, $msgType,$title,$description);
echo $resultStr;
exit;
}
}
///判断文本
public function handleText($postObj)
{
$fromUsername = $postObj->FromUserName;
$toUserName = $postObj->ToUserName;
$keyword = $postObj->Content;
$CreateTime = $postObj->CreateTime;
require("db.php");
//$dbh = mysql_connect("localhost:3306","root","root");
//mysql_select_db("****");
//mysql_query("set names UTF8");
$sqlmsg ="insert into message(FromUserName,ToUserName,MsgType,Content,CreateTime) values ('".trim($fromUsername)."','".trim($toUserName)."','text','".trim($keyword)."',$CreateTime)";
$result = mysql_query($sqlmsg,$dbh);
$time = time();
$sqlMapping ="select count(*) as count from mapping where OpenId = '".trim($fromUsername)."'";
$mappingRs = mysql_query($sqlMapping,$dbh);
$mappingRow = mysql_fetch_assoc($mappingRs);
$mappingCount = $mappingRow["count"];
if(intval($mappingCount)!=0){
////说明这个人已经访问过了
//根据OpenId查询Mapping表的Telephone
///查询关键子 start
$sqlkeywords ="select KeyWords from customsg";
$keywordRs = mysql_query($sqlkeywords,$dbh);
$keys = array();
while($keyArray = mysql_fetch_assoc($keywordRs)){
$keys[] = $keyArray["KeyWords"];
}
$catekeywords ="select CategoryName from category";
$catekeywordRs = mysql_query($catekeywords,$dbh);
$catekeys = array();
while($catekeyArray = mysql_fetch_assoc($catekeywordRs)){
$catekeys[] = $catekeyArray["CategoryName"] ;
}
////关键字end
/////查询category.customsg表里关键字 ----start--
if(in_array($keyword,$keys))
{
$wordresult = mysql_query("select * from customsg where KeyWords = '".$keyword."'",$dbh);
$wordrow = mysql_fetch_assoc($wordresult);
////$count = intval($wordrow["Count"]);
////if(empty($count)){ $count = 1 ;}else{ $count = intval($count) +1;}
////$updatesql ="update manager set Count= $count and LoginTime = $time where username='".$username."' and password ='".$password."'";
if(!empty($wordrow)){
mysql_query("update category set count =count+1 where CategoryName = '".$keyword."'",$dbh);
}
$time =time();
if($wordrow["MsgType"]=='news'){
$Title =$wordrow["Title"];
$Description = $wordrow["Description"];
$PicUrl ="http://**********.info/".$wordrow["PicUrl"];
$Url = $wordrow["Url"]."?OpenID=$fromUsername";
$textTpl2 ="<xml>
<ToUserName><![CDATA[%s]]></ToUserName>
<FromUserName><![CDATA[%s]]></FromUserName>
<CreateTime>%s</CreateTime>
<MsgType><![CDATA[news]]></MsgType>
<Content><![CDATA[%s]]></Content>
<ArticleCount>1</ArticleCount>
<Articles>
<item>
<Title><![CDATA[".$Title."]]></Title>
<Description><![CDATA[".$Description."]]></Description>
<PicUrl><![CDATA[".$PicUrl."]]></PicUrl>
<Url><![CDATA[".$Url."]]></Url>
</item>
</Articles>
<FuncFlag>0</FuncFlag>
</xml>";
$resultStr = sprintf($textTpl2,$postObj->FromUserName,$postObj->ToUserName,$time,$Title,$Description);
echo $resultStr;
}else{
$textTpl3 ="<xml>
<ToUserName><![CDATA[%s]]></ToUserName>
<FromUserName><![CDATA[%s]]></FromUserName>
<CreateTime>%s</CreateTime>
<MsgType><![CDATA[text]]></MsgType>
<Content><![CDATA[%s]]></Content>
<FuncFlag>0</FuncFlag>
</xml>";
$contentStr = $wordrow["Content"];
$resultStr = sprintf($textTpl3, $postObj->FromUserName, $postObj->ToUserName, $time,$contentStr);
echo $resultStr;
///$this->responseEvent($postObj,$contentStr);
}
}else{
$sqlMappingTel ="select Telephone from mapping where OpenId = '".$fromUsername."'";
$mappingTelRs = mysql_query($sqlMappingTel,$dbh);
$mappingTelRow = mysql_fetch_assoc($mappingTelRs);
$Telephone = $mappingTelRow["Telephone"];
$sqluser ="select * from account where Telephone='".$Telephone."'";
$connuser = mysql_query($sqluser,$dbh);
$userrow = mysql_fetch_assoc($connuser);
if($keyword=='学分查询')
{
$id = $userrow["id"];
$RealName = $userrow["RealName"];
$Certification = $userrow["Certification"];
$State = $userrow["State"];
if($State=='1' || $State==1){
$contentStr = $RealName.",您是内部人员。欢迎来到”微课堂“,回复【帮助】可获得更多辅助信息。";
}else{
$contentStr = $RealName.",您是第 $id 位认证会员,得到 $Certification 学分。欢迎来到”微课堂“,回复【帮助】可获得更多辅助信息。";
}
$this->responseEvent($postObj,$contentStr);
}elseif($keyword=="考试2323232323"){
////$contentStr ="欢迎来到”微课堂“,回复【心情】可获得更多辅助信息。";
$this->responseExam($postObj);
}elseif($keyword=="心情"){
////$contentStr ="欢迎来到”微课堂“,回复【心情】可获得更多辅助信息。";
$this->responseMood($postObj);
}elseif($keyword=="百万格子"){
////$contentStr ="欢迎来到”微课堂“,回复【心情】可获得更多辅助信息。";
$this->responseGrid($postObj);
}elseif($keyword=="照片陈列竞赛"){
////$contentStr ="欢迎来到”“,回复【心情】可获得更多辅助信息。";
$this->responsePhotoWall($postObj);
}elseif($keyword=="世界杯"){
////$contentStr ="欢迎来到”课堂“,回复【世界杯】可获得更多辅助信息。";
$this->responseMatchGuess($postObj);
}else{
if($keyword =="认证"){
$id = $userrow["id"];
$RealName = $userrow["RealName"];
$Certification = $userrow["Certification"];
$State = $userrow["State"];
if($State=='1'){
$contentStr = $RealName.",您已通过认证。回复【帮助】可获得更多辅助信息。";
}else{
$contentStr = $RealName.",您已通过认证。您是第 $id 位认证会员,已获得 $Certification 学分。回复【学分查询】即可查询当前学分情况。";
}
$this->responseEvent($postObj,$contentStr);
}else{
$this->responseGraphic($postObj);
}
}
}
}else{
////说明这个人没有认证,
///保存用户访问记录,然后删除
$sqlIfExsitSign="select * from signin where OpenId = '".trim($fromUsername)."'";
$signIsExsitRs = mysql_query($sqlIfExsitSign,$dbh);
$signIsExsitRow = mysql_fetch_assoc($signIsExsitRs);
if($keyword =="认证")
{
$contentStr ="请输入手机号码";
$this->responseEvent($postObj,$contentStr);
}elseif(preg_match("/^1[34578][0-9]{9}$/",trim($keyword))){
////匹配手机号码
$sqlinT ="select * from account where Telephone = '".$keyword."'";
$connT = mysql_query($sqlinT,$dbh);
$resultT = mysql_fetch_assoc($connT);
if($resultT){
///account 表中有号码
$signInsert ="insert into signin(OpenId,Telephone,CreateDate) values ('".trim($fromUsername)."','".$keyword."',$CreateTime)";
$connSign = mysql_query($signInsert,$dbh);
$contentStr ="请输入姓名";
$this->responseEvent($postObj,$contentStr);
}else{
////$contentStr ="您的电话号不存在,请重新认证";
//$contentStr ="非常抱歉认证失败,可能由于您的电话号码或者姓名输入有误,请重新回复 【认证】 进行会员认证,谢谢。";
$contentStr ="请输入姓名";
$this->responseEvent($postObj,$contentStr);
}
}elseif($signIsExsitRow){
////向数据表 ACCout 中查询 用户信息
$Telephone = $signIsExsitRow["Telephone"];
$RealName = trim($keyword);
$time = time();
$sqlAccountTRStr ="select * from account where Telephone = '".$Telephone."' and RealName ='".$RealName."'";
$accountTRRs = mysql_query($sqlAccountTRStr,$dbh);
$accountTRRow = mysql_fetch_assoc($accountTRRs);
$State = $accountTRRow["State"];
if($State=='1'|| $State==1){
//$sqlAccountTRStrUpdate ="update account set Certification =10 where Telephone = '".$Telephone."' and RealName ='".$RealName."'";
//$accountTRRsUpdate = mysql_query($sqlAccountTRStrUpdate,$dbh);
}elseif($State=='2'|| $State==2 || $State=='3'|| $State==3 || $State==4 || $State=='4'){
$sqlAccountTRStrUpdate ="update account set Certification =50 where Telephone = '".$Telephone."' and RealName ='".$RealName."'";
$accountTRRsUpdate = mysql_query($sqlAccountTRStrUpdate,$dbh);
$sqlScoreLog ="insert into scorelog(RealName,Telephone,Score,Type,Description,Source,CreateTime)values('".$RealName."','".$Telephone."','50','Certification','认证分数','新用户进行认证',$time);";
$ScoreLogResult= mysql_query($sqlScoreLog,$dbh);
}else{
}
if(!empty($accountTRRow)){
$distictSql ="select count(*) as c from mapping where OpenID ='".trim($fromUsername)."'";
$distictRs =mysql_query($distictSql,$dbh);
$distictCount =0 ;
while($distictRow = mysql_fetch_array($distictRs)){
$distictCount = $distictRow["c"];
}
if($distictCount>0){
$contentStr ="您的微信号已经绑定,如果不是您的微信账号,请联系我们";
}else{
///删除签到表
$deleteSign ="delete from signin where OpenId ='".trim($fromUsername)."'";
$delSignRs =mysql_query($deleteSign,$dbh);
////插入一条mapping记录方便下次记录用户信息
$insertMapping ="insert into mapping(OpenId,Telephone,CreateTime) values('".trim($fromUsername)."','".$Telephone."',$time)";
$insertMapRs = mysql_query($insertMapping,$dbh);
if($State=='1'|| $State==1){
$contentStr = $RealName.",您已通过认证,回复【帮助】可获得更多辅助信息。";
}else{
$uid = $accountTRRow["id"];
$Certification = $accountTRRow["Certification"];
$contentStr = $RealName.",您已通过认证。您是第 $uid 位认证会员,已获得 $Certification 学分。";
}
}
$this->responseEvent($postObj,$contentStr);
}else{
///删除签到表
$deleteSign ="delete from signin where OpenId ='".trim($fromUsername)."'";
$delSignRs =mysql_query($deleteSign,$dbh);
$contentStr ="非常抱歉认证失败,可能由于您的电话号码或者姓名输入有误,请重新回复 【认证】 进行会员认证,谢谢。";
$this->responseEvent($postObj,$contentStr);
}
}else{
$contentStr ="非常抱歉认证失败,可能由于您的电话号码或者姓名输入有误,请重新回复 【认证】 进行会员认证,谢谢。";
$this->responseEvent($postObj,$contentStr);
}
}
}
////图片---考试
public function responseExam($postObj)
{
$postStr = $GLOBALS["HTTP_RAW_POST_DATA"];
///图文混排
if (!empty($postStr)){
$postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
$fromUsername = $postObj->FromUserName;
$toUsername = $postObj->ToUserName;
$keyword = trim($postObj->Content);
$time = time();
$msgType ="news";
$title ="学期第二期";
$description = '累积学分拿好"礼"答对1题50分 答错不计分)!';
$textTpl ="<xml>
<ToUserName><![CDATA[%s]]></ToUserName>
<FromUserName><![CDATA[%s]]></FromUserName>
<CreateTime>%s</CreateTime>
<MsgType><![CDATA[%s]]></MsgType>
<Content><![CDATA[%s]]></Content>
<ArticleCount>1</ArticleCount>
<Articles>
<item>
<Title><![CDATA[".$title."]]></Title>
<Description><![CDATA[".$description."]]></Description>
<PicUrl><![CDATA[http://***.info/images/bauschlomb_exam2.jpg]]></PicUrl>
<Url><![CDATA[http://***.info/interHandler.php?OpenID=$fromUsername¶m=exam]]></Url>
</item>
</Articles>
<FuncFlag>1</FuncFlag>
</xml>";
if(!empty($keyword))
{
$resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType,$title,$description);
echo $resultStr;
}else{
echo 'nokeyword';
}
exit;
}
}
////图片------心情点赞
public function responseMood($postObj)
{
$postStr = $GLOBALS["HTTP_RAW_POST_DATA"];
///图文混排
if (!empty($postStr)){
$postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
$fromUsername = $postObj->FromUserName;
$toUsername = $postObj->ToUserName;
$keyword = trim($postObj->Content);
$time = time();
$msgType ="news";
$title ='【心心情一起为完美点"睛"';
$textTpl ="<xml>
<ToUserName><![CDATA[%s]]></ToUserName>
<FromUserName><![CDATA[%s]]></FromUserName>
<CreateTime>%s</CreateTime>
<MsgType><![CDATA[%s]]></MsgType>
<Content><![CDATA[%s]]></Content>
<ArticleCount>1</ArticleCount>
<Articles>
<item>
<Title><![CDATA[".$title."]]></Title>
<Description><![CDATA[用一双润眸传达你每天的多彩心情,每物!]]></Description>
<PicUrl><![CDATA[http://***.info/images/mood_kv_20140508.jpg]]></PicUrl>
<Url><![CDATA[http://****.info/interHandler.php?OpenID=$fromUsername¶m=mood]]></Url>
</item>
</Articles>
<FuncFlag>1</FuncFlag>
</xml>";
//if(!empty($keyword))
//{
$description ="情,获学分赢精美提示物!";
$resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType,$title,$description);
echo $resultStr;
//}else{
//echo 'nokeyword';
//}
//exit;
}
}
////图片------百万格子
public function responseGrid($postObj)
{
$postStr = $GLOBALS["HTTP_RAW_POST_DATA"];
///图文混排
if (!empty($postStr)){
$postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
$fromUsername = $postObj->FromUserName;
$toUsername = $postObj->ToUserName;
$keyword = trim($postObj->Content);
$time = time();
$msgType ="news";
$title ='百万格子';
$textTpl ="<xml>
<ToUserName><![CDATA[%s]]></ToUserName>
<FromUserName><![CDATA[%s]]></FromUserName>
<CreateTime>%s</CreateTime>
<MsgType><![CDATA[%s]]></MsgType>
<Content><![CDATA[%s]]></Content>
<ArticleCount>1</ArticleCount>
<Articles>
<item>
<Title><![CDATA[".$title."]]></Title>
<Description><![CDATA[参与活动获学分赢精美提示物!]]></Description>
<PicUrl><![CDATA[http://***.info/images/million.jpg]]></PicUrl>
<Url><![CDATA[http://****.info/interHandler.php?OpenID=$fromUsername¶m=grid]]></Url>
</item>
</Articles>
<FuncFlag>1</FuncFlag>
</xml>";
//if(!empty($keyword))
//{
$description ="美提示物!";
$resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType,$title,$description);
echo $resultStr;
//}else{
///echo 'nokeyword';
//}
///exit;
}
}
////图片------照片陈列竞赛
public function responsePhotoWall($postObj)
{
$postStr = $GLOBALS["HTTP_RAW_POST_DATA"];
///图文混排
if (!empty($postStr)){
$postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
$fromUsername = $postObj->FromUserName;
$toUsername = $postObj->ToUserName;
$keyword = trim($postObj->Content);
$time = time();
$msgType ="news";
$title ='照片陈列竞赛';
$textTpl ="<xml>
<ToUserName><![CDATA[%s]]></ToUserName>
<FromUserName><![CDATA[%s]]></FromUserName>
<CreateTime>%s</CreateTime>
<MsgType><![CDATA[%s]]></MsgType>
<Content><![CDATA[%s]]></Content>
<ArticleCount>1</ArticleCount>
<Articles>
<item>
<Title><![CDATA[".$title."]]></Title>
<Description><![CDATA[参与活动获学分赢精美提示物!]]></Description>
<PicUrl><![CDATA[http://***.info/images/photowall.jpg]]></PicUrl>
<Url><![CDATA[http://&&&&&&&.info/interHandler.php?OpenID=$fromUsername¶m=photo]]></Url>
</item>
</Articles>
<FuncFlag>1</FuncFlag>
</xml>";
if(!empty($keyword))
{
$description ="照片陈列竞赛";
$resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType,$title,$description);
echo $resultStr;
}else{
echo 'nokeyword';
}
exit;
}
}
////世界杯大竞赛
public function responseMatchGuess($postObj)
{
$postStr = $GLOBALS["HTTP_RAW_POST_DATA"];
///图文混排
if (!empty($postStr)){
$postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
$fromUsername = $postObj->FromUserName;
$toUsername = $postObj->ToUserName;
$keyword = trim($postObj->Content);
$time = time();
$msgType ="news";
$title ='世界杯大竞猜';
$textTpl8 ="<xml>
<ToUserName><![CDATA[%s]]></ToUserName>
<FromUserName><![CDATA[%s]]></FromUserName>
<CreateTime>%s</CreateTime>
<MsgType><![CDATA[%s]]></MsgType>
<Content><![CDATA[%s]]></Content>
<ArticleCount>1</ArticleCount>
<Articles>
<item>
<Title><![CDATA[".$title."]]></Title>
<Description><![CDATA[世界杯大竞猜,赢学分!兑好礼!]]></Description>
<PicUrl><![CDATA[http://****.info/img/match.jpg]]></PicUrl>
<Url><![CDATA[http://********.info/interHandler.php?OpenID=$fromUsername¶m=match]]></Url>
</item>
</Articles>
<FuncFlag>1</FuncFlag>
</xml>";
//if(!empty($keyword))
//{
$description ="世界杯大兑好礼!";
$resultStr = sprintf($textTpl8, $fromUsername, $toUsername, $time, $msgType,$title,$description);
echo $resultStr;
///}else{
//echo 'nokeyword';
///}
///exit;
}
}
///判断Link,接收目的文件 目前只有图文混排
public function handleLink($postObj)
{
$fromUsername = $postObj->FromUserName;
$toUsername = $postObj->ToUserName;
$msgType = trim($postObj->MsgType);
$CreateTime = $postObj->CreateTime;
$Title = $postObj->Title;
$Description = $postObj->Description;
$Url = $postObj->Url;
require("db.php");
//$dbh = mysql_connect("localhost:3306","root","root");
//mysql_select_db("&&&&&");
//mysql_query("set names UTF8");
$sql ="insert into message(FromUserName,ToUserName,MsgType,Title,Description,Url,CreateTime) values ('".$fromUsername."','".$toUsername."','".$msgType."','".$Title."','".$Description."','".$Url."',$CreateTime)";
$result = mysql_query($sql,$dbh);
$time = time();
$textTpl ="<xml>
<ToUserName><![CDATA[%s]]></ToUserName>
<FromUserName><![CDATA[%s]]></FromUserName>
<CreateTime>%s</CreateTime>
<MsgType><![CDATA[news]]></MsgType>
<Content><![CDATA[%s]]></Content>
<ArticleCount>1</ArticleCount>
<Articles>
<item>
<Title><![CDATA[".$Title."]]></Title>
<Description><![CDATA[".$Description."]]></Description>
<PicUrl><![CDATA[http://********o/images/boshilun.jpg]]></PicUrl>
<Url><![CDATA[".$Url."]]></Url>
</item>
<item>
</Articles>
<FuncFlag>1</FuncFlag>
</xml>";
$resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time,$Title,$Description);
echo $resultStr;
exit();
}
///判断图片
public function handleImage($postObj)
{
$fromUsername = $postObj->FromUserName;
$toUsername = $postObj->ToUserName;
$msgType = trim($postObj->MsgType);
$PicUrl = $postObj->PicUrl;
$CreateTime = $postObj->CreateTime;
$MediaId = $postObj->MediaId;
require("db.php");
//$dbh = mysql_connect("localhost:3306","root","root");
//mysql_select_db("*********");
//mysql_query("set names UTF8");
$sql ="insert into message(FromUserName,ToUserName,MsgType,PicUrl,MediaId,CreateTime) values ('".$fromUsername."','".$toUsername."','".$msgType."','".$PicUrl."','".$MediaId."',$CreateTime)";
$result = mysql_query($sql,$dbh);
$time = time();
$sqlOpenId ="select * from account where OpenId = '".$fromUsername."'";
$userResult = mysql_query($sqlOpenId,$dbh);
$userrow = mysql_fetch_assoc($userResult) ;
$RealName = $userrow["RealName"];
$Telephone = $userrow["Telephone"];
$contentStr = $RealName .":上传了图片";
$sqlimg ="insert into photowall(OpenId,RealName,Telephone,MediaId,MsgType,PicUrl,CreateTime) values ('".$fromUsername."','".$RealName."','".$Telephone."','".$MediaId."','image','".$PicUrl."',$CreateTime)";
$resultimg = mysql_query($sqlimg,$dbh);
$this->responseEvent($postObj,$contentStr);
}
///判断语音
public function handleVoice($postObj)
{
$fromUsername = $postObj->FromUserName;
$toUsername = $postObj->ToUserName;
$MsgType = $postObj->MsgType;
$MediaId = $postObj->MediaId;
$Format = $postObj->Format;
$Recognition = $postObj->Recognition;
$CreateTime = $postObj->CreateTime;
require("db.php");
//$dbh = mysql_connect("localhost:3306","root","root");
//mysql_select_db("********");
//mysql_query("set names UTF8");
$sql ="insert into message(FromUserName,ToUserName,MsgType,MediaId,Format,Recognition,CreateTime) values ('".$fromUsername."','".$toUsername."','".$MsgType."','".$MediaId."','".$Format."','".$Recognition."',$CreateTime)";
$result = mysql_query($sql,$dbh);
$time = time();
$textTpl ="<xml>
<ToUserName><![CDATA[%s]]></ToUserName>
<FromUserName><![CDATA[%s]]></FromUserName>
<CreateTime>%s</CreateTime>
<MsgType><![CDATA[voice]]></MsgType>
<Voice>
<MediaId><![CDATA[".$MediaId."]]></MediaId>
<Format><![CDATA[".$Format."]]></Format>
</Voice>
</xml>";
$resultStr = sprintf($textTpl, $postObj->FromUserName, $postObj->ToUserName, $time,$MediaId,$Format);
echo $resultStr;
exit();
}
///判断视频
public function handleVideo($postObj)
{
$fromUsername = $postObj->FromUserName;
$toUsername = $postObj->ToUserName;
$msgType = $postObj->MsgType;
$MediaId = $postObj->MediaId;
$ThumbMediaId = $postObj->ThumbMediaId;
$CreateTime = $postObj->CreateTime;
require("db.php");
//$dbh = mysql_connect("localhost:3306","root","root");
//mysql_select_db("*********");
//mysql_query("set names UTF8");
$sql ="insert into message(FromUserName,ToUserName,MsgType,MediaId,ThumbMediaId,CreateTime) values ('".$fromUsername."','".$toUsername."','".$msgType."','".$MediaId."','".$ThumbMediaId."',$CreateTime)";
$result = mysql_query($sql,$dbh);
$time = time();
$textTpl ="<xml>
<ToUserName><![CDATA[%s]]></ToUserName>
<FromUserName><![CDATA[%s]]></FromUserName>
<CreateTime>%s</CreateTime>
<MsgType><![CDATA[video]]></MsgType>
<Video>
<MediaId><![CDATA[".$MediaId."]]></MediaId>
<ThumbMediaId><![CDATA[".$ThumbMediaId."]]></ThumbMediaId>
</Video>
</xml>";
$resultStr = sprintf($textTpl, $postObj->FromUserName, $postObj->ToUserName, $time, $msgType,$MediaId,$ThumbMediaId);
echo $resultStr;
exit();
}
////图片
public function responseGraphic($postObj)
{
$postStr = $GLOBALS["HTTP_RAW_POST_DATA"];
///图文混排
if (!empty($postStr)){
$postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
$fromUsername = $postObj->FromUserName;
$toUsername = $postObj->ToUserName;
$keyword = trim($postObj->Content);
$time = time();
$msgType ="news";
$textTpl ="<xml>
<ToUserName><![CDATA[%s]]></ToUserName>
<FromUserName><![CDATA[%s]]></FromUserName>
<CreateTime>%s</CreateTime>
<MsgType><![CDATA[%s]]></MsgType>
<Content><![CDATA[%s]]></Content>
<ArticleCount>1</ArticleCount>
<Articles>
<item>
<Title><![CDATA[什么可以帮助您?]]></Title>
<Description><![CDATA[询目前学分情况,过往信息查询,可点击右上角图标,查询历史消息。]]></Description>
<PicUrl><![CDATA[http://***g.info/images/mmexport2.jpg]]></PicUrl>
<Url><![CDATA[http://********.info/help.html]]></Url>
</item>
</Articles>
<FuncFlag>1</FuncFlag>
</xml>";
if(!empty($keyword))
{
$title ="以帮助您?";
$description ="息查询,可点击右上角图标,查询历史消息。";
$resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType,$title,$description);
echo $resultStr;
}else{
echo 'nokeyword';
}
exit;
}
}
/////返回音乐文件
public function responseMusic()
{
$postStr = $GLOBALS["HTTP_RAW_POST_DATA"];
if (!empty($postStr)){
$postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
$fromUsername = $postObj->FromUserName;
$toUsername = $postObj->ToUserName;
$keyword = trim($postObj->Content);
$time = time();
$textTpl ="<xml>
<ToUserName><![CDATA[%s]]></ToUserName>
<FromUserName><![CDATA[%s]]></FromUserName>
<CreateTime>%d</CreateTime>
<MsgType><![CDATA[music]]></MsgType>
<Music>
<Title><![CDATA[%s]]></Title>
<Description><![CDATA[%s]]></Description>
<MusicUrl><![CDATA[%s]]></MusicUrl>
<HQMusicUrl><![CDATA[%s]]></HQMusicUrl>
</Music>
</xml>";
$title = '爱乐团-天涯';
$msgType ='music';
$description = '由金牌音乐制作人王超领军,坚持词曲编全部原创的路线。加女主音胡霖高亢的声音加所有爱音乐的朋友等于爱乐团。现由胡霖和王超两位成员组成。(原主唱为徐立)2005年发行第一张大碟《天涯》,艳惊整个华语乐坛';
$musicUrl = 'http://www.xyzk.net/images/bgm/Audio/tianya.mp3';
$HQMusicUrl = 'http://www.xyzk.net/images/bgm/Audio/tianya.mp3';
$resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $title, $description, $musicUrl, $HQMusicUrl);
echo $resultStr;
exit;
}
}
public function responseLocation($postObj)
{
$fromUsername = $postObj->FromUserName;
$toUsername = $postObj->ToUserName;
$Location_X = $postObj->Location_X;
$Location_Y = $postObj->Location_Y;
$Scale = $postObj->Scale;
$Label = $postObj->Label;
$CreateTime = $postObj->CreateTime;
$time = time();
require("db.php");
//$dbh = mysql_connect("localhost:3306","root","root");
//mysql_select_db("******");
//mysql_query("set names UTF8");
$sql ="insert into message(FromUserName,ToUserName,MsgType,Location_X,Location_Y,Scale,Label,CreateTime) values ('".trim($fromUsername)."','".$toUsername."','location','".$Location_X."','".$Location_Y."','".$Scale."','".$Label."',$CreateTime)";
$result = mysql_query($sql,$dbh);
$textTpl ="<xml>
<ToUserName><![CDATA[%s]]></ToUserName>
<FromUserName><![CDATA[%s]]></FromUserName>
<CreateTime>%s</CreateTime>
<MsgType><![CDATA[text]]></MsgType>
<Content><![CDATA[%s]]></Content>
<FuncFlag>0</FuncFlag>
</xml>";
$contentStr =$sql;
$resultStr = sprintf($textTpl, $postObj->FromUserName, $postObj->ToUserName,$time,$contentStr);
echo $resultStr;
}
微信是一款手机通信软件,支持通过手机网络发送语音短信、视频、图片和文字。微信可以单聊及群聊,还能根据地理位置找到附近的人,带给大家全新的移动沟通体验,有需要的小伙伴快来保存下载体验吧!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号