Il tuo errore dice tutto. Dal momento che arrivi a } else { ... }
bit, significa isset($_POST['id']) && isset($_POST['status_id'])
è falso.
In altre parole, il tuo modulo è:
- non usando POST, ma GET. In tal caso aggiungi
method="post"
al tuo<form>
etichetta. (in realtà, POST è il comportamento predefinito, quindi se questo è il caso, probabilmente devi rimuovere o modificaremethod="GET"
dal tag del modulo) - e/o il tuo modulo non contiene campi di input con
name="id"
e/oname="status_id"
La domanda aggiornata aggiunge il codice Android. Da qui questo aggiornamento:
Dubito che jsonParser.makeHttpRequest
in realtà pubblica una stringa json codificata nel modulo. È molto probabile che invierà solo dati json al server web. Il $_POST di PHP non verrà riempito automaticamente con questi dati, poiché gestisce solo i dati codificati nel modulo.
Probabilmente dovrai leggere questi dati da stdIn.
Prova:
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
$rawPostData = file_get_contents("php://input");
$postData = (array)json_decode($rawPostData);
}
E poi usa $postData dove altrimenti useresti $_POST