Tu error lo dice todo. Desde que llegas al } else { ... } bit, significa isset($_POST['id']) && isset($_POST['status_id']) es falso.
En otras palabras, su formulario es:
- no usa POST, sino GET. En ese caso, agregue
method="post"a su<form>etiqueta. (en realidad, POST es el comportamiento predeterminado, por lo que si este es el caso, probablemente deba eliminar o cambiarmethod="GET"de la etiqueta del formulario) - y/o su formulario no contiene campos de entrada con
name="id"y/oname="status_id"
La pregunta actualizada agrega código de Android. De ahí esta actualización:
Dudo que jsonParser.makeHttpRequest en realidad publica una cadena json codificada en forma. Lo más probable es que solo publique datos json en el servidor web. El $_POST de PHP no se llenará automáticamente con estos datos, ya que solo maneja datos codificados en formularios.
Probablemente necesite leer estos datos desde stdIn.
Prueba:
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
$rawPostData = file_get_contents("php://input");
$postData = (array)json_decode($rawPostData);
}
Y luego use $postData donde de otro modo usaría $_POST