PHP對了,可是對接到只返回array
$result = mysql_query($sql, $link); // 執行查詢語句
$res=array();
while($row = mysql_fetch_array($result)){
if(條件){
$res[] = $row["title"].$row["answer"];
}
}
return $res;
?>
用這個之後PHP是對,可是接到就變成單獨的回複一個array
------解決思路----------------------
把資料連線成串,或編碼成 json
------解決思路----------------------
return json_encode($res);
------解決思路----------------------
在echo json_encode之前,加上:header('Content-type:application/json;charset=utf-8');
------解決思路----------------------
引用:
Quote: 引用:
在echo json_encode之前,加上:header('Content-type:application/json;charset=utf-8');
$sql = "select * FROM `record` WHERE title like '%$keyword%'";
$result = mysql_query($sql, $link); // 執行查詢語句
$res=array();
while($row = mysql_fetch_array($result))
{
$res[]=$row["title"];
}
header('Content-type:application/json;charset=utf-8');
return json_encode($res);
mysql_close($link);
} 這次返回的值是[]
傳回值為空白?那麼直接return "hello world";是什麼結果?
------解決思路----------------------
引用:
Quote: 引用:
在echo json_encode之前,加上:header('Content-type:application/json;charset=utf-8');
會不會是這個有錯誤?
%s
%s
%s
%s
%s
0
你把0去掉試試。
另外:要返回資訊,不應該用return,而是echo
public function responseMsg(){
//get post data, May be due to the different environments
$postStr = $GLOBALS["HTTP_RAW_POST_DATA"]; //接收發來的XML資料
//extract post data
if(!empty($postStr)){
//解析post來的XML為一個對象$postObj
$postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
$fromUsername = $postObj->FromUserName; //請求訊息的使用者
$toUsername = $postObj->ToUserName; //"我"的公眾號id
$keyword = trim($postObj->Content); //使用者發送的訊息內容
$time = time(); //時間戳記
$msgtype = 'text'; //訊息類型:文本
$textTpl = "
%s
%s
%s
%s
%s
";
$contentStr = "輸入-h查看協助吧(=?ω?=)";
$resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgtype, $contentStr);
echo $resultStr;