я создал службу регистрации для своего приложения для Android сторона Android работает правильно (я думаю) и возвращает "сбой" это мой код PHP:
$json = file_get_contents('php://input');
$User = json_decode($json);
function ConnectDatabase()
{
$connect = mysqli_connect("localhost", "root", "", "my_db");
mysqli_set_charset($connect, "utf8");
return ConnectDatabase();
}
$username = $User->user;
$password = $User->pass;
function AddUser($user, $pass)
{
$connect = ConnectDatabase();
if (!(trim($user) == "" || trim($pass) == ""))
{
$check = mysqli_query($connect, "select count(*) from usertable where Username='$user'");
$row = mysqli_fetch_array($check);
if ($row[0] > 0)
{
return "usernameTaken";
}
else
{
$SQL = "INSERT INTO usertable(Username,Password) VALUES ('$user','$pass')";
$query = mysqli_query($connect, $SQL);
if ($query != "")
{
return "ok";
}
else
{
return "failed";
}
}
}
else
{
return "badUsernameOrPassword";
}
}
$status = AddUser($username, $password);
echo json_encode(["status"=>$status]);
проверил uri и его правильный ... вы видите ошибку? Спасибо.






Из документации PHP для mysqli_query от php.net:
Returns FALSE on failure. For successful SELECT, SHOW, DESCRIBE or EXPLAIN queries mysqli_query() will return a mysqli_result object. For other successful queries mysqli_query() will return TRUE.
Таким образом, ваш код должен быть:
if ($query != FALSE){
return "ok";
}else{
return "failed";
}
Из вашего php-кода он никогда не должен возвращать ошибку, потому что $query будет либо объектом mysqli_result, либо false и никогда не будет "". Не видя вашего кода Android, будет сложно сказать. Но этот код PHP всегда будет возвращать usernameTaken, badUsernameOrPassword или ok (никогда не будет отображаться как сбой). Проблема определенно должна исходить из вашего кода Android, если вы видите «сбой». Не могли бы вы опубликовать свой код Android, чтобы я мог помочь с ним, обновив свой ответ? Вам также следует изменить:
if ($query != "")
{
return "ok";
}
к
if (!$query)
{
return "ok";
}