主頁(yè) > 知識(shí)庫(kù) > php微信公眾號(hào)開(kāi)發(fā)之二級(jí)菜單

php微信公眾號(hào)開(kāi)發(fā)之二級(jí)菜單

熱門(mén)標(biāo)簽:蘇州外呼系統(tǒng)有效果嗎 400 電話 辦理 亳州企業(yè)外呼系統(tǒng) 兼職做地圖標(biāo)注好賺錢(qián)嗎 地圖標(biāo)注怎么做商戶驗(yàn)證 山東電銷卡外呼系統(tǒng)原理是什么 海南外呼系統(tǒng)方案 智能電銷語(yǔ)音機(jī)器人資訊 打開(kāi)百度地圖標(biāo)注

本文實(shí)例為大家分享了php微信公眾號(hào)二級(jí)菜單的具體代碼,供大家參考,具體內(nèi)容如下

核心代碼:

$postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
 $fromUsername = $postObj->FromUserName;
 $toUsername = $postObj->ToUserName;
 $MsgType=$postObj->MsgType;
 $keyword = trim($postObj->Content);
 $time = time();
 $textTpl = "xml>
    ToUserName>![CDATA[%s]]>/ToUserName>
     FromUserName>![CDATA[%s]]>/FromUserName>
     CreateTime>%s/CreateTime>
      MsgType>![CDATA[text]]>/MsgType>
      Content>%s/Content>
     FuncFlag>0/FuncFlag>
    /xml>";    

   //用 戶 名 : $user
   //密  碼 : $pwd
   //主庫(kù)域名 : $host
   //從庫(kù)域名 : SAE_MYSQL_HOST_S
   //端  口 : $port
   //數(shù)據(jù)庫(kù)名 : $dbname

     $dbname = "app_dq095";
     $host = "w.rdc.sae.sina.com.cn";
     $port = "3306";
     $user = "4k514n103z";
     $pwd = "2402314li2j1i5im1xy2xizj5y332w2x41k2z203";

     /*接著調(diào)用mysql_connect()連接服務(wù)器*/
     // 連主庫(kù)
     $db = mysql_connect($host,$user,$pwd);

     if(!$db){
      die("Connect Server Failed: " . mysql_error($db));
     }

     /*連接成功后立即調(diào)用mysql_select_db()選中需要連接的數(shù)據(jù)庫(kù)*/
     if (!mysql_select_db($dbname)) {
      die("Select Database Failed: " . mysql_error($db));
     }

      mysql_query("set names utf-8",$db); 
     /*至此連接已完全建立,就可對(duì)當(dāng)前數(shù)據(jù)庫(kù)進(jìn)行相應(yīng)的操作了*/
     /*?。?!注意,無(wú)法再通過(guò)本次連接調(diào)用mysql_select_db來(lái)切換到其它數(shù)據(jù)庫(kù)了?。?!*/
     /* 需要再連接其它數(shù)據(jù)庫(kù),請(qǐng)?jiān)偈褂胢ysql_connect+mysql_select_db啟動(dòng)另一個(gè)連接*/

     /**
      * 接下來(lái)就可以使用其它標(biāo)準(zhǔn)php mysql函數(shù)操作進(jìn)行數(shù)據(jù)庫(kù)操作
      */

    if($keyword=="天氣")
    {
     $content="請(qǐng)輸入地區(qū)";
     $sql="INSERT INTO `weather`(`id`,`user`,`keyword`) VALUES (NULL,'{$fromUsername}','{$keyword}')";
     mysql_query($sql); 
    }
    else
    {
     $sql="SELECT `keyword` FROM `weather` WHERE `user`= '" . $fromUsername . "'";
     $query=mysql_query($sql);
     $rs=mysql_fetch_array($query);
     $c= $rs['keyword'];
     echo $c;
     if($c=="天氣")
     {
      $url="http://api.map.baidu.com/telematics/v2/weather?location={$keyword}ak=1a3cde429f38434f1811a75e1a90310c";

       $fa=file_get_contents($url);
       $f=simplexml_load_string($fa);
       $city=$f->currentCity;
       $da1=$f->results->result[0]->date;
       $da2=$f->results->result[1]->date;
       $da3=$f->results->result[2]->date;  
       $w1=$f->results->result[0]->weather;
       $w2=$f->results->result[1]->weather;
       $w3=$f->results->result[2]->weather;  
       $p1=$f->results->result[0]->wind;
       $p2=$f->results->result[1]->wind;
       $p3=$f->results->result[2]->wind;
       $q1=$f->results->result[0]->temperature;
       $q2=$f->results->result[1]->temperature;
       $q3=$f->results->result[2]->temperature; 
       $d1=$city.$da1.$w1.$p1.$q1;
       $d2=$city.$da2.$w2.$p2.$q2;
       $d3=$city.$da3.$w3.$p3.$q3;
       $content=$d1.$d2.$d3;
       if (empty($content))
       {
        $content="你輸入的地區(qū)有誤";}
       }
   else{
  $content="請(qǐng)先輸入天氣";
   } 
 }        
 $resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time,$content);
echo $resultStr;

index.php 整體代碼如下:

?php
/**
 * wechat php test
 */

//define your token
define("TOKEN", "weixin");
$wechatObj = new wechatCallbackapiTest();
$wechatObj->responseMsg();

class wechatCallbackapiTest
{
 public function valid()
 {
  $echoStr = $_GET["echostr"];

  //valid signature , option
  if($this->checkSignature()){
   echo $echoStr;
   exit;
  }
 }

 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;
    $keyword = trim($postObj->Content);
    $time = time();
    $textTpl = "xml>
       ToUserName>![CDATA[%s]]>/ToUserName>
       FromUserName>![CDATA[%s]]>/FromUserName>
       CreateTime>%s/CreateTime>
        MsgType>![CDATA[text]]>/MsgType>
        Content>%s/Content>
        FuncFlag>0/FuncFlag>
       /xml>";    

     //用 戶 名 : $user
     //密  碼 : $pwd
     //主庫(kù)域名 : $host
     //從庫(kù)域名 : SAE_MYSQL_HOST_S
     //端  口 : $port
     //數(shù)據(jù)庫(kù)名 : $dbname

     $dbname = "app_dq095";
     $host = "w.rdc.sae.sina.com.cn";
     $port = "3306";
     $user = "4k514n103z";
     $pwd = "2402314li2j1i5im1xy2xizj5y332w2x41k2z203";

     /*接著調(diào)用mysql_connect()連接服務(wù)器*/
     // 連主庫(kù)
     $db = mysql_connect($host,$user,$pwd);

     if(!$db){
      die("Connect Server Failed: " . mysql_error($db));
     }

     /*連接成功后立即調(diào)用mysql_select_db()選中需要連接的數(shù)據(jù)庫(kù)*/
     if (!mysql_select_db($dbname)) {
      die("Select Database Failed: " . mysql_error($db));
     }

      mysql_query("set names utf-8",$db); 
     /*至此連接已完全建立,就可對(duì)當(dāng)前數(shù)據(jù)庫(kù)進(jìn)行相應(yīng)的操作了*/
     /*!??!注意,無(wú)法再通過(guò)本次連接調(diào)用mysql_select_db來(lái)切換到其它數(shù)據(jù)庫(kù)了?。?!*/
     /* 需要再連接其它數(shù)據(jù)庫(kù),請(qǐng)?jiān)偈褂胢ysql_connect+mysql_select_db啟動(dòng)另一個(gè)連接*/

     /**
      * 接下來(lái)就可以使用其它標(biāo)準(zhǔn)php mysql函數(shù)操作進(jìn)行數(shù)據(jù)庫(kù)操作
      */

    if($keyword=="天氣")
    {
     $content="請(qǐng)輸入地區(qū)";
     $sql="INSERT INTO `weather`(`id`,`user`,`keyword`) VALUES (NULL,'{$fromUsername}','{$keyword}')";
     mysql_query($sql); 
    }
    else
    {
     $sql="SELECT `keyword` FROM `weather` WHERE `user`= '" . $fromUsername . "'";
     $query=mysql_query($sql);
     $rs=mysql_fetch_array($query);
     $c= $rs['keyword'];
     echo $c;
     if($c=="天氣")
     {
      $url="http://api.map.baidu.com/telematics/v2/weather?location={$keyword}ak=1a3cde429f38434f1811a75e1a90310c";

       $fa=file_get_contents($url);
       $f=simplexml_load_string($fa);
       $city=$f->currentCity;
       $da1=$f->results->result[0]->date;
       $da2=$f->results->result[1]->date;
       $da3=$f->results->result[2]->date;  
       $w1=$f->results->result[0]->weather;
       $w2=$f->results->result[1]->weather;
       $w3=$f->results->result[2]->weather;  
       $p1=$f->results->result[0]->wind;
       $p2=$f->results->result[1]->wind;
       $p3=$f->results->result[2]->wind;
       $q1=$f->results->result[0]->temperature;
       $q2=$f->results->result[1]->temperature;
       $q3=$f->results->result[2]->temperature; 
       $d1=$city.$da1.$w1.$p1.$q1;
       $d2=$city.$da2.$w2.$p2.$q2;
       $d3=$city.$da3.$w3.$p3.$q3;
       $content=$d1.$d2.$d3;
       if (empty($content))
       {
        $content="你輸入的地區(qū)有誤";}
       }
     else{
      $content="請(qǐng)先輸入天氣";
     } 
    }        
    $resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time,$content);
    echo $resultStr;

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

?>

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • PHP實(shí)現(xiàn)微信公眾號(hào)企業(yè)號(hào)自定義菜單接口示例
  • PHP實(shí)現(xiàn)創(chuàng)建微信自定義菜單的方法示例
  • php微信高級(jí)接口調(diào)用方法(自定義菜單接口、客服接口、二維碼)
  • php微信開(kāi)發(fā)之自定義菜單實(shí)現(xiàn)
  • php微信開(kāi)發(fā)之自定義菜單完整流程
  • php微信開(kāi)發(fā)自定義菜單
  • 微信自定義菜單的創(chuàng)建/查詢/取消php示例代碼
  • 微信利用PHP創(chuàng)建自定義菜單的方法
  • php實(shí)現(xiàn)微信公眾平臺(tái)賬號(hào)自定義菜單類
  • php實(shí)現(xiàn)微信公眾平臺(tái)賬號(hào)自定義菜單類

標(biāo)簽:溫州 呼倫貝爾 金華 安康 萊蕪 綏化 清遠(yuǎn) 紹興

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《php微信公眾號(hào)開(kāi)發(fā)之二級(jí)菜單》,本文關(guān)鍵詞  php,微信,公眾,號(hào)開(kāi),發(fā)之,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《php微信公眾號(hào)開(kāi)發(fā)之二級(jí)菜單》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于php微信公眾號(hào)開(kāi)發(fā)之二級(jí)菜單的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章