Android — Как извлечь параметры POST в стек переполнения

Из приложения для Android, я звоню свой скрипт php.

HttpPost httppost = new HttpPost("http://www.smth.net/some.php");
try {
// Add your data
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
nameValuePairs.add(new BasicNameValuePair("pa", "555"));
nameValuePairs.add(new BasicNameValuePair("pb", "550"));
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));

// Execute HTTP Post Request
HttpResponse response = httpclient.execute(httppost);
}

Как я могу получить значение «pa» и «pb» в моем PHP-скрипте.

Я сделал $ _POST [‘pa’] и urldecode ($ _ POST [‘pa’]), но оба они дают мне пустую строку.

0

Решение

Ты можешь использовать print_r($_POST) отладить то, что отправляется.

Если это поможет, вот как я отправляю информацию с Android с помощью POST:

JSONObject requestBody = new JSONObject();
requestBody.put("pa", "550");
requestBody.put("pb", "550");

HttpPost requestBase = new HttpPost("url");
StringEntity stringEntity = new StringEntity(requestBody.toString());
stringEntity.setContentType(new BasicHeader(HTTP.CONTENT_TYPE, "application/json"));
requestBase.setEntity(stringEntity);

HttpResponse response = httpclient.execute(requestBase);

Я работаю по памяти, хотя здесь — вам нужно вставить пару try / catch.

Использование JSONObject может быть ненужным, но я обнаружил, что это дало мне лучшую гибкость и надежность.

1

Другие решения

Вы хотите использовать $_POST переменная окружения. Итак, в вашем коде вы можете использовать $_POST["pa"] а также $_POST["pb"],

Если это не работает, попробуйте использовать var_dump проверить содержимое $_POST (var_dump($_POST)). Если он пуст, то это проблема с вашим кодом Android.

1

По вопросам рекламы [email protected]