我有一个andoird应用程序,我希望结果返回到我的android textview。我在浏览器上测试它,是的,结果显示但它没有返回我的Android应用程序。
以下代码是我的php文件。
<?php
$accounts = mysql_connect("localhost","user123","1234")
or die (mysql_error());
mysql_select_db("user123",$accounts);
if(isset($_GET["id"])){
$id = $_GET['id'];
$result = mysql_query("SELECT * FROM table123 WHERE id = $id");
if($result != null){
$result = mysql_fetch_array($result);
$user = array();
$user["username"] = $result["username"];
$user["password"] = $result["password"];
echo json_encode($user);
}else{
}
}else{
$user["username"] = "not found";
$user["password"] = null;
echo json_encode($user);
}
?>
以下代码是浏览器结果
{"username":"not found","password":null}
即使找不到结果,也应该返回$ user show me“not found”。不可能没有任何东西返回流。我已在我的浏览器上测试它,是的,它返回$ user给我。我的代码出了什么问题?
答案 0 :(得分:1)
将"localhost"
替换为"10.0.2.2"
并将此行添加到您的清单中:
<uses-permission android:name="android.permission.INTERNET" />
如果您使用的是Android 3.0或更高版本(在这种情况下,您可以使用)。
然后,如果可能,将模拟器更改为2.3.3,然后再次尝试运行代码
或
将这些行添加到您的代码中:
StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(policy);
答案 1 :(得分:1)
我的PHP源代码没有任何问题。我替换下面的代码后,我得到了它的工作
HttpClient httpClient = new DefaultHttpClient();
到
DefaultHttpClient httpClient = new DefaultHttpClient();
一切正常。