Android App Inventor 2與PHP的傳值與傳回值(HTTP Get)

首先設計一個簡單的PHP程式,並且將程式傳到支援PHP的網站空間上去。
例如網址空間:http://test.ccc.com.tw/

PHP檔名:test.php
<?php
  if($_GET["v_chk"]==1) {
    echo "您的年齡是:" . $_GET["age"] ;
  } else {
    echo "沒有收到";
  }
?>

完整的網址如下,會傳回「您的年齡是:XX」的字串:
http://test.ccc.com.tw/test.php?v_chk=1&age=16


App Inventor 2 的畫面設計如下:
重要的元件有輸入值的文字框(TextBox1);及「按下我測試」的按鈕(Button1);Web元件(web1)


App Inventor 2的程式流程如下:
當按下Button1時,會設定Web1的Url值,因為要串成完整的網址,所以用join來組合兩段語法的值,
所以join右邊的組合就會變為http://test.ccc.com.tw/test.php?v_chk=1&age=Textbox1.Text,
而Textbox1.Text就是我們輸入年齡的值。
接著呼叫web1.get,因為我們沒有設定SaveResponse及Requesfilename,所以會觸發web1.gottext事件。
在gottext件件中,先判斷responsecode是否傳回代碼200,200表示網站成功執行,
最後就把PHP的回傳值(responsecontent),帶入Label2顯示出來。


執行的結果

如果輸入框輸入中文的話,出現的結果會變成亂碼,所以我在TextBox1之前加上編碼函數如下圖:

測試中文的部份就正常了。