public
function
responseMsg()
{
$postStr
=
$GLOBALS
[
"HTTP_RAW_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"
);
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
);
$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
);
$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"
:
$this
->responseMatchGuess(
$postObj
);
break
;
case
"V1001_Activity033"
:
$resultStr
=
$this
->responseGrid(
$postObj
);
break
;
case
"V1001_Activity034"
:
$resultStr
=
$this
->responseMood(
$postObj
);
break
;
case
"V1001_Activity035"
:
$contentStr
=
"第二期考试活动已结束"
;
$resultStr
=
$this
->responseEvent(
$postObj
,
$contentStr
);
break
;
default
:
$contentStr
=
"欢迎关注微课堂nn"
;
$resultStr
=
$this
->responseEvent(
$postObj
,
$contentStr
);
break
;
}
}
}
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:
<Url><![CDATA[http:
</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"
);
$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){
$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"
] ;
}
if
(in_array(
$keyword
,
$keys
))
{
$wordresult
= mysql_query(
"select * from customsg where KeyWords = '"
.
$keyword
.
"'"
,
$dbh
);
$wordrow
= mysql_fetch_assoc(
$wordresult
);
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
;
}
}
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"
){
$this
->responseExam(
$postObj
);
}
elseif
(
$keyword
==
"心情"
){
$this
->responseMood(
$postObj
);
}
elseif
(
$keyword
==
"百万格子"
){
$this
->responseGrid(
$postObj
);
}
elseif
(
$keyword
==
"照片陈列竞赛"
){
$this
->responsePhotoWall(
$postObj
);
}
elseif
(
$keyword
==
"世界杯"
){
$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
){
$signInsert
=
"insert into signin(OpenId,Telephone,CreateDate) values ('"
.trim(
$fromUsername
).
"','"
.
$keyword
.
"',$CreateTime)"
;
$connSign
= mysql_query(
$signInsert
,
$dbh
);
$contentStr
=
"请输入姓名"
;
$this
->responseEvent(
$postObj
,
$contentStr
);
}
else
{
$contentStr
=
"请输入姓名"
;
$this
->responseEvent(
$postObj
,
$contentStr
);
}
}
elseif
(
$signIsExsitRow
){
$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){
}
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
);
$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:
<Url><![CDATA[http:
</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:
<Url><![CDATA[http:
</item>
</Articles>
<FuncFlag>1</FuncFlag>
</xml>";
$description
=
"情,获学分赢精美提示物!"
;
$resultStr
= sprintf(
$textTpl
,
$fromUsername
,
$toUsername
,
$time
,
$msgType
,
$title
,
$description
);
echo
$resultStr
;
}
}
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:
<Url><![CDATA[http:
</item>
</Articles>
<FuncFlag>1</FuncFlag>
</xml>";
$description
=
"美提示物!"
;
$resultStr
= sprintf(
$textTpl
,
$fromUsername
,
$toUsername
,
$time
,
$msgType
,
$title
,
$description
);
echo
$resultStr
;
}
}
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:
<Url><![CDATA[http:
</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:
<Url><![CDATA[http:
</item>
</Articles>
<FuncFlag>1</FuncFlag>
</xml>";
$description
=
"世界杯大兑好礼!"
;
$resultStr
= sprintf(
$textTpl8
,
$fromUsername
,
$toUsername
,
$time
,
$msgType
,
$title
,
$description
);
echo
$resultStr
;
}
}
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"
);
$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:
<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"
);
$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"
);
$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"
);
$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:
<Url><![CDATA[http:
</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:
$HQMusicUrl
= 'http:
$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"
);
$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
;
}