2016-04-10 37 views
1

我想從我的本地主機數據庫通過我的Android應用程序獲取一些信息。我使用HttpUrlConnection類來創建從/向數據庫讀/寫的對象。與POST和GET應用程序的難題

我現在有這個問題,因爲我試圖創建HttpUrlConnection對象需要同時讀取和寫入本地主機數據庫上承載的PHP文件。我發現HttpUrlConnection類有一個方法setRequestMethod,如果我想寫入數據庫,我將使用setRequestMethod(「POST」),如果我想從數據庫讀取數據,我將使用 setRequestMethod(「GET」)。我需要同時做兩件事。我需要使用POST方法初始化PHP文件中的變量,然後根據初始化的POSTED變量搜索並讀取數據庫中的行值。

任何意見將不勝感激。

謝謝

+0

你應該總是使用POST。讓php只是回聲,你的android代碼從輸入流中讀取返回的回聲。你創造了一個不存在的問題。 – greenapps

+0

'HttpUrlConnection類創建從/向數據庫讀寫的對象'。不可能。 HtmlUrlConnection只能與php腳本進行通信。 PHP腳本用它做什麼是HttpUrlConnection無法實現的。 – greenapps

+0

'正在嘗試創建的HttpUrlConnection對象需要同時讀寫一個PHP文件'。錯誤的描述。 HttpUrlConnection發送一些數據到一個PHP腳本。然後php腳本發回一些數據。 PHP sript必須寫入數據庫,然後(不是同一時間)從數據庫讀取數據並將回波數據返回給HttpUrlConnection完全沒有問題。它退出正常。 – greenapps

回答

0

從服務器的響應不依賴GET或POST方法。所以,你可以接受在兩種情況下的反應,只是設計你的服務器是這樣的:

$value1 = $_REQUEST["name"]; 
$value2 = $_REQUEST["name2"]; 
... 
do_some_thing(); 
... 
$sth = mysqli_query("SELECT ..."); 
$rows = array(); 
while($r = mysqli_fetch_assoc($sth)) { 
    $rows[] = $r; 
} 
print json_encode($rows); 
//don't care it's POST or GET request. 

見GET和POST方法之間的不同:http://www.w3schools.com/tags/ref_httpmethods.asp