Как передать значение с сайта android на веб-службу php и получить его?

Я пытаюсь передать значение своему веб-сервису php. Я уже использую этот код для передачи значения «name»:

private class MyAsyncTask extends AsyncTask<String, Void, Void> { protected Void doInBackground (String... params) { Intent intent = getIntent(); String name = intent.getStringExtra("KEY_NAME"); //HttpClient httpclient = new DefaultHttpClient(); HttpPost httppost = new HttpPost("http://10.0.2.2/secure_login/get_data_user.php"); List<NameValuePair> nameValuePair = new ArrayList<NameValuePair>(1); nameValuePair.add(new BasicNameValuePair("KEY_NAME", name)); DefaultHttpClient hc = new DefaultHttpClient(); // HttpResponse response = hc.execute(httppost); try { httppost.setEntity(new UrlEncodedFormEntity(nameValuePair)); } catch (UnsupportedEncodingException e){ // writing error to log e.printStackTrace(); } try { HttpResponse response = hc.execute(httppost); HttpEntity entity = response.getEntity(); InputStream inStream = entity.getContent(); // writing response to log Log.d("Http Response:", response.toString()); } catch (ClientProtocolException e) { // writing exception to log e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } return null; } 

И это, для преобразования Stream в String.

  protected String convertStreamToString(InputStream inStream) { BufferedReader reader = new BufferedReader(new InputStreamReader(inStream)); StringBuilder sb = new StringBuilder(); String line = null; try { while ((line = reader.readLine()) != null) { sb.append(line + "\n"); } } catch (IOException e) { e.printStackTrace(); } finally { try { inStream.close(); } catch (IOException e) { e.printStackTrace(); } } return sb.toString(); } } 

Но я получил этот ответ только в log cat: org.apache.http.message.BasicHttpResponse@43e4c068

Мне нужно передать значение «name», чтобы мой веб-сервис php мог получить и выполнить запрос следующим образом:

  if (isset($_GET['name'])) { $name = $_GET['name']; require_once 'DB_Functions.php'; $db = new DB_Functions(); $result = mysql_query("SELECT name, email from users where name = '$name'"); 

Как мне это исправить? Заранее спасибо.

Вы отправляете почтовый запрос в android и пытаетесь получить параметр в PHP с помощью $_GET .

Попробуйте получить доступ к переменной имени через $_POST :

 if (isset($_POST['name'])) $name = mysql_real_escape_string($_POST['name']); require_once 'DB_Functions.php'; $db = new DB_Functions(); $result = mysql_query("SELECT name, email from users where name = '$name'"); 

Важно: не забывайте избегать строк, прежде чем помещать их в оператор SQL с помощью mysql_real_escape_string чтобы избежать инъекций SQL.