我正在尝试创建一个restAPI来从MySQL获取一些细节我已经创建了一个PHP文件来在Android设备上访问它们。
这是PHP文件:
<?php
include("db_details.php");
$response = array();
if (isset($_POST['userID']))
{
$userID = $_POST['userID'];
$grantedvalue = "granted";
$stmt = mysqli_prepare($bd, "SELECT p.name, p.userURL, a.grantaccuracy FROM loc_details d JOIN loc_profile p ON d.userID = p.userId JOIN loc_friends a on a.userId = d.userId WHERE a.grantstatus = ? and a.grantuserID = ?");
mysqli_stmt_bind_param($stmt, "ss", $grantedvalue, $userID);
$checkresult = mysqli_stmt_execute($stmt);
$result = $stmt->get_result();
if (!$checkresult)
{
die("Error updating user_details_table: " . mysqli_stmt_error($stmt));
}
else
{
echo $result -> num_rows;
if($result -> num_rows > 0)
{
$response["details"] = array();
while ($row = mysqli_fetch_array($result,MYSQLI_ASSOC))
{
// temp user array
$detail = array();
$detail["name"] = $row["name"];
$detail["userURL"] = $row["userURL"];
$detail["grantaccuracy"] = $row["grantaccuracy"];
array_push($response["details"], $detail);
}
$response["success"] = 1;
echo json_encode($response);
}
else
{
$response["success"] = 0;
$response["message"] = "Zero Data";
echo json_encode($response);
}
}
}
else
{
$response["success"] = 300;
$response["message"] = "issue with getting values";
echo json_encode($response);
}
?>
我使用AsyncHttpClient库来访问上面的php文件。结果不会出现在那里但是当我尝试直接在浏览器上访问php时:
http://www.thiswillhavemycompanydomain.com/loc/get_user_details.php?userID=2238
结果在浏览器上正确打印。所以我认为这可能是在android中编码部分的问题,因此我尝试使用Chrome扩展程序(高级REST客户端)来查看我是否可以获得结果。奇怪的是我甚至没有得到结果。我总是从php代码中获取if(isset($ _ POST [&#39; userID&#39;]))的其他部分。
不确定这里有什么问题,因为我可以直接在浏览器上查看所有数据,但不能在ARC或我的Android APP上查看?
有人可以帮我解决这个问题吗,因为我不知道问题出在哪里?
谢谢!