9年网站建设经验,宁波地区著名的网站建设公司!24小时咨询热线:137 3217 3747
   宁波总部  |  台州  |  温州  |  绍兴
您的位置首页: >> 网站建设 >> 宁波网站建设 网络营销  |   宁波网站建设  |   网站优化  |   宁波网页设计  |   我们观点  |  
微信接口完整代码php版
作者:http://www.sl99.net  来源:宁波网络公司/宁波网站建设——三乐设计  发布时间:2013-12-04  阅读次数:4214 【关闭本页】

<?php

/**

  * wechat php test

  */


//define your token

include_once("../php/common.inc");

include_once("../php/function.php");

define("TOKEN", "nbntzs");

$wechatObj = new wechatCallbackapiTest();

$wechatObj->valid();


class wechatCallbackapiTest

{

 public function valid()

    {

        $echoStr = $_GET["echostr"];


       //valid signature , option

        if($this->checkSignature()){

         //echo $echoStr;

   $this->responseMsg();

         exit;

        }

    }


   public function responseMsg()

    {

  //get post data, May be due to the different environments

  global $db_server,$db_login,$db_password,$db;

  $conn = mysql_connect($db_server,$db_login,$db_password);

  mysql_select_db($db, $conn);

  $qry = mysql_query("SET NAMES 'utf8'") or startUpError('.SET NAMES Error.');

  $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;

                $keyword = trim($postObj->Content);

    $RX_TYPE = trim($postObj->MsgType);

                $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>";

    $textgz="<xml>

           <ToUserName><![CDATA[%s]]></ToUserName>

        <FromUserName><![CDATA[%s]]></FromUserName>

           <CreateTime>%s</CreateTime>

       <MsgType><![CDATA[news]]></MsgType>

                            <ArticleCount>2</ArticleCount>

                            <Articles>

                            <item>

                            <Title><![CDATA[%s]]></Title>

                            <Description><![CDATA[%s]]></Description>

                            <PicUrl><![CDATA[%s]]></PicUrl>

                            <Url><![CDATA[%s]]></Url>

                            </item>

                            <item>

                            <Title><![CDATA[%s]]></Title>

                            <Description><![CDATA[%s]]></Description>

                            <PicUrl><![CDATA[%s]]></PicUrl>

                            <Url><![CDATA[%s]]></Url>

                            </item>

                            </Articles>

                            </xml>";

    $textnews_top="<xml>

           <ToUserName><![CDATA[%s]]></ToUserName>

        <FromUserName><![CDATA[%s]]></FromUserName>

           <CreateTime>%s</CreateTime>

       <MsgType><![CDATA[news]]></MsgType>

                            <ArticleCount>%s</ArticleCount>

                            <Articles>";

    $textnews_con="<item>

                            <Title><![CDATA[%s]]></Title>

                            <Description><![CDATA[%s]]></Description>

                            <PicUrl><![CDATA[%s]]></PicUrl>

                            <Url><![CDATA[%s]]></Url>

                            </item>";

    $textnews_bot="</Articles>

                            </xml>";

    if($RX_TYPE=="event"){

     if ($postObj->Event=="subscribe"){

    $zhf_sql="select * from wx where wx_lx='1' and wx_publish='0' order by tuijian_paixu asc,wx_update asc limit 0,10";

    $result_show=mysql_query($zhf_sql,$conn);

    $result_top = sprintf($textnews_top, $fromUsername, $toUsername, $time,mysql_num_rows($result_show));    

    while ($obj_show=mysql_fetch_assoc($result_show)){

    $result_con.=sprintf($textnews_con,$obj_show["wx_title"],$obj_show["wx_con"],"/images/pic/lb/".$obj_show["wx_pic"],$obj_show["wx_link"]);

    }

                 echo $result_top.$result_con.$textnews_bot;

     }

    } else {

     

    $zhf_sql="select * from wx where wx_lx!='1' and wx_publish='0' and FIND_IN_SET('".$keyword."',wx_key) and wx_hfid='0' order by tuijian_paixu asc,wx_update asc";

    $result_show=mysql_query($zhf_sql,$conn);

    if (mysql_num_rows($result_show)=="0"){

     $zhf_sql="select * from wx where wx_lx!='1' and wx_publish='0'  and wx_hfid='0' and wx_key='默认回复' order by tuijian_paixu asc,wx_update asc";

    $result_show=mysql_query($zhf_sql,$conn);

    }

    if ($obj_show=mysql_fetch_assoc($result_show)){

    switch ($obj_show["wx_lx"]){

      case "3":

      $result_con_show=sprintf($textnews_con,str_replace("<BR>","\n",$obj_show["wx_title"]),str_replace("<BR>","\n",$obj_show["wx_con"]),"/images/pic/lb/".$obj_show["wx_pic"],$obj_show["wx_link"]);

   

    $result_top = sprintf($textnews_top, $fromUsername, $toUsername, $time,"1");

    echo $result_top.$result_con_show.$textnews_bot;

      break;

      case "4":

      $result_con_show=sprintf($textnews_con,$obj_show["wx_title"],$obj_show["wx_con"],"images/pic/lb/".$obj_show["wx_pic"],$obj_show["wx_link"]);

    $hf_sql="select * from wx where wx_lx!='1' and wx_publish='0'  and wx_hfid='".$obj_show["wx_id"]."' order by tuijian_paixu asc,wx_update asc limit 0,10";

                $result_hf=mysql_query($hf_sql,$conn);

    $hf_sl=mysql_num_rows($result_hf)+1;

    $result_top = sprintf($textnews_top, $fromUsername, $toUsername, $time,$hf_sl);

    while ($obj_hf=mysql_fetch_assoc($result_hf)){

    $result_con_show.=sprintf($textnews_con,str_replace("<BR>","\n",$obj_hf["wx_title"]),$obj_hf["wx_con"],"/images/pic/lb/".$obj_hf["wx_pic"],$obj_hf["wx_link"]);

    }

    echo $result_top.$result_con_show.$textnews_bot;

      break;

    case "2":

      $resultStr4 = sprintf($textTpl, $fromUsername, $toUsername, $time, str_replace("<BR>","\n",$obj_show["wx_con"]));

      echo $resultStr4;

    break;

    }

   

    }

   

   

             //echo $result_top.$result_con.$textnews_bot;

   

    }

        }else {

         echo "";

         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;

  }

 }

}


?>


此功能包括:关注自动回复,文本回复,单图片回复,多图片回复,关键词默认回复



责任编辑:宁波网站建设      

上一篇:程序员考虑的WampServer修改默认web根目录实用方法  [2013-12-06] 下一篇:手机网站绑定微信接口代码asp版,php版  [2013-12-04]

  相关文章
  网站建设中JS单选,多选框,文本框控制 [2012-12-19]   三乐设计网络公司管理员浅谈服务器.NET伪静… [2013-03-25]
  淘宝店铺设计之导航CSS代码使用修改技巧 [2013-08-08]   一点手机网站设计的经验之谈 [2013-10-29]
  手机网站绑定微信接口代码asp版,php版 [2013-12-04]   程序员考虑的WampServer修改默认web根目录实… [2013-12-06]
  网络营销  
  设计当中的OPP卡头袋的设计…
  2014年1月21日大量网站域名…
  2014年1月百度更新新版首页…
  宁波网站建设浅谈微信5.0正…
  微信公众平台开发api消息接…
  360搜索之360百科服务启用…
  雅虎新版主页支持主流各大…
  宁波网站建设  
  程序员考虑的WampServer修…
  微信接口完整代码php版
  手机网站绑定微信接口代码…
  一点手机网站设计的经验之…
  淘宝店铺设计之导航CSS代码…
  三乐设计网络公司管理员浅…
  网站建设中JS单选,多选框…
  网站优化  
  浅谈宁波网站建设中的微信…
  优化网站必须设计404错误页…
  揭秘最新百度更新规律
  SEO排名步骤
  体验SEO内部优化结构的方法…
  揭秘网站天天被收录的3大招…
  企业网站中适合应用h1,h2,…
  宁波网页设计  
  怎么解决手机网站微信内置…
  手机网站建设时如何判断微…
  设计师的福音快速浏览全球…
  宁波某家俬网上商城网站设…
  浙江大学宁波理工学院文明…
  工商银行满意度有奖调查问…
  清洁机器人iRobot网站设计…