我是这样写的,但是不知道为什么总是不能返回数据呢,有那位高人指点一二<?php
define("TOKEN", "shiyudir1978");
define("MESS","输入点啥吧");
 include ("admin/install/config.php");  
 $conn=@mysql_connect($host,$user,$pass) or die ("数据连接错误");  
 mysql_select_db($database,$conn);  
 mysql_query("set names 'UTF8'");
  
$wechatObj = new wechatCallbackapiTest();
//$wechatObj->valid();
$wechatObj->responseMsg(); 
class wechatCallbackapiTest
{
    public function valid()
    {
     $echoStr = $_GET["echostr"]; 
     if($this->checkSignature()){
     echo $echoStr;
     exit;
     }
    } 
    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;
$content = $postObj->Content;
$msgType=$postObj->MsgType;
$Title=$postObj->Title;
$Description=$postObj->Description;
$Url=$postObj->Url;
     $keyword = trim($postObj->Content);
     $time = time();
     $textTpl = "<xml>
<ToUserName><![CDATA[%s]]></ToUserName>
<FromUserName><![CDATA[%s]]></FromUserName>
<CreateTime>%s</CreateTime>
<MsgType><![CDATA[%s]]></MsgType>
<Title><![CDATA[%s]]></Title>
<Description><![CDATA[%s]]></Description>
<Url><![CDATA[%s]]></Url>
<FuncFlag>0</FuncFlag> 
</xml> ";
     if(!empty( $keyword ))
     {
    
$view_sql="select * from news where Title  like '%$keyword%'";
//$view_sql="select * from news where ID=$keyword";                
$view=mysql_fetch_array(mysql_query($view_sql));

$msgType = "link";
$rows = mysql_num_rows(mysql_query($view_sql)); 
if ($rows>0){
     $Title = $view[Title];
}else{
$Title ="抱歉,您所选择的关键字在系统中不存在,我们正在不断的完善系统建设";
}
$Description="测试";
$Url="http://www.baidu.com";
     $resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $Title, $Description, $Url);
     echo $resultStr;
     }else{
     echo MESS;
     } 
        }else {
     echo MESS;
     exit;
     }
    }    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;
     }
    }
}
    ?>