define ( "TOKEN", "weixin" );
traceHttp();
$wechatObj = new wechat ( );
$wechatObj->valid ();
class wechat {
public function valid() {
$echoStr = $_GET ["echostr"];
if ($this->checkSignature ()) {
echo $echoStr;
exit ();
}
}
private function checkSignature() {
$signature = $_GET ["signature"];
$timestamp = $_GET ["timestamp"];
$nonce = $_GET ["nonce"];
$token = TOKEN;
$tmpArr = array ($token, $timestamp, $nonce );
sort ( $tmpArr, SORT_STRING );
$tmpStr = implode ( $tmpArr );
$tmpStr = sha1 ( $tmpStr );
if ($tmpStr == $signature) {
return true;
} else {
return false;
}
}
}
function traceHttp() {
logger("REMOTE_ADDR:" . $_SERVER ['REMOTE_ADDR'].
((strpos($_SERVER ['REMOTE_ADDR'],"101.226"))?" From WeiXin":" Unknown IP"));
logger("QUERY_STRING:".$_SERVER["QUERY_STRING"]);
}
function logger($content)
{
file_put_contents("\log.html",date('Y-m-d H:i:s ').$content."
",FILE_APPEND);
}
?>
回复讨论(解决方案)
你访问的url是否报错?
都没错,我又在网上下载了一个代码包,但是和之前的一样。我重新上传了一遍,然后就可以访问了,不知道怎么回事。