2012-10-02 45 views
2

我是Java和PHP的初學者。返回從PHP的Java客戶端返回值

我做了一個使用web視圖來傳遞一個字符串到PHP將插入這個字符串的數據庫客戶端網頁客戶端Java應用程序。

我的問題是,我怎麼能返回錯誤值以Java客戶端應用程序的情況下,PHP未能插入使用webView的字符串到數據庫。

的PHP代碼將是這樣的:

if(Insertion suceed) 
{return true;} 

else {return false;} 

但我不知道如何使它在Java方面。

P.S:我需要返回值時顯示一個警告到Java用戶重新啓動應用程序。

回答

2

你可以使用PHP/Java Bridge,讓您的應用程序之間的通信。您還可以設置PHP提供的REST服務(請參閱this先前的問題),並允許您的Java應用程序使用該服務。 PHP應用程序只是發送true/false作爲響應。

+0

感謝您的幫助,但我的項目必須使用webView來傳遞字符串。 – user1494142

2

您可能嘗試使用get/post請求從php與java通信。通過其他方式進行溝通可以通過查看xml或json響應來完成。 JSON是相當不錯的回答和PHP(PHP對象可以使用json_encode()/ json_decode(被解析成JSON)Java也支持JSON通信(見http://www.json.org/java/)的支持。JSON允許在發送空。

詳見這裏http://www.json.org/

如果所有你的php輸出/寫是你的插入比代碼的狀態可能看起來像

if(Insertion suceed){ 
    echo "true"; 
}else { 
    echo "false:; 
} 

在Java中,你需要捕捉到你的Web視圖的內容。我發現simmilar問題,這裏可能的解決方案 How do I get the web page contents from a WebView?。如果它也出把其他數據/網頁內容比你只需要「隱藏」你的狀態輸出的地方,並在Java從輸出源字符串剪下來

現在

,如果你有字符串值,你的內容只是利用圖書館位於: http://code.google.com/p/json-simple/

Java代碼stould看起來像這樣(在我的情況「迴應」是內容的字符串):

String response = "false"; 
JSONParser parser = new JSONParser(); 
Boolean result = (Boolean)parser.parse(response); 

我希望你明白

+0

感謝您的回覆,但我多次試過json,但從未成功,可能它對我而言是一個初學者。此外,我們不得不使用webView將變量從客戶端傳遞到服務器。 – user1494142

+0

您是否可以訪問來自php的數據響應?我將在我的工作後嘗試管理一些類,並且在此處插入一些代碼。我們保持聯繫 – Misiakw

+0

我不承認你的意思是「你能訪問來自php的數據響應」,但我會在這裏等着你的迴應。感謝您的幫助! – user1494142

0

你可以通過設置一個布爾VA riable =在Java應用程序中的webView調用,並使php函數向Java應用程序返回true或false。

我不能檢查,如果這是工作還是沒有,因爲服務器的PHP代碼中沒有上傳到凌晨3星期!