Vaše chyba mluví za vše. Protože se dostanete do } else { ... }
bit, znamená to isset($_POST['id']) && isset($_POST['status_id'])
je nepravdivé.
Jinými slovy, váš formulář je buď:
- nepoužívá POST, ale GET. V takovém případě přidejte
method="post"
do vašeho<form>
štítek. (ve skutečnosti je POST výchozí chování, takže pokud je to tento případ, pravděpodobně budete muset odstranit nebo změnitmethod="GET"
ze značky formuláře) - a/nebo váš formulář neobsahuje vstupní pole s
name="id"
a/neboname="status_id"
Aktualizovaná otázka přidává kód Android. Proto tato aktualizace:
Pochybuji, že jsonParser.makeHttpRequest
ve skutečnosti odešle řetězec json zakódovaný ve formuláři. Je více než pravděpodobné, že pouze POST json data na webový server. PHP $_POST nebude automaticky vyplněno těmito daty, protože zpracovává pouze data zakódovaná ve formuláři.
Pravděpodobně budete muset načíst tato data ze stdIn.
Zkuste:
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
$rawPostData = file_get_contents("php://input");
$postData = (array)json_decode($rawPostData);
}
A pak použijte $postData tam, kde byste jinak použili $_POST