繁体   English   中英

如何将各种数据从android发送到php

[英]How to send various data from android to php

早上好,我正在android studio中做一个应用程序,正在使用php建立与MYSQL数据库的连接。

但是,当我对数据库使用单个参数进行查询时,它可以工作,但是我进行了修改以发送两个参数,但它不起作用,因为我验证了php并且查询运行正常,但是** Android **指示错误在执行程序时,我正在寻找可能是什么错误,但我没有找到未正确执行的原因

安卓

 public class Principal extends AppCompatActivity { Spinner opciones; Button Consultar; EditText Cons; JSONArray ja; Tabla_Consulta tabla; LinearLayout linearLayout; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_principal); opciones = (Spinner) findViewById(R.id.spinner); Consultar = (Button) findViewById(R.id.button_consultar); Cons = (EditText) findViewById(R.id.editText_Consulta); tabla = new Tabla_Consulta(this, (TableLayout) findViewById(R.id.tabla)); ArrayAdapter < CharSequence > adapter = ArrayAdapter.createFromResource(this, R.array.Opc, android.R.layout.simple_spinner_item); adapter.setDropDownViewResource(android.R.layout.preference_category); opciones.setAdapter(adapter); Consultar.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { String selec = opciones.getSelectedItem().toString(); String selec1 = Cons.getText().toString(); Consulta("http://10.0.2.2/Libro_Titulo.php?eje=" + opciones.getSelectedItem().toString() + "&" + "Tit=" + Cons.getText().toString()); //Consulta("http://10.0.2.2/Biblioteca/Libro_Id.php?ide="+Cons.getText().toString()); // Log.d("query", ); Log.d("query", selec + " " + Cons.getText().toString()); Log.d("query", selec + " " + selec1); } }); } private void Consulta(String URL) { Log.i("conexion", URL); RequestQueue queue = Volley.newRequestQueue(this); StringRequest stringRequest = new StringRequest(Request.Method.GET, URL, new Response.Listener < String > () { //EL ERROR ESTA EN ESTA LINEA @Override public void onResponse(String response) { int j = 1; Log.d("reponse", response); try { ja = new JSONArray(response); tabla.agregarCabecera(R.array.Opciones); for (int i = 0; i < ja.length(); i++) { JSONObject c = ja.getJSONObject(i); String id = c.getString("Id"); String Titulo = c.getString("Titulo"); String Autor = c.getString("Autor"); String Editorial = c.getString("Editorial"); String Facultad = c.getString("Facultad"); String Reserva = c.getString("Reserva"); if (Reserva.equals("0")) { Reserva = Reserva.replace("0", "Libre"); } else if (Reserva.equals("1")) { Reserva = Reserva.replace("1", "Reserva"); } ArrayList < String > elementos = new ArrayList < String > (); elementos.add(Integer.toString(j)); elementos.add(id); elementos.add(Titulo); elementos.add(Autor); elementos.add(Editorial); elementos.add(Facultad); elementos.add(Reserva); elementos.add("BUTTON"); tabla.agregarFilaTabla(elementos); j++; } } catch (JSONException e) { e.printStackTrace(); } } }, new Response.ErrorListener() { @Override public void onErrorResponse(VolleyError error) { } }); queue.add(stringRequest); } } 

错误

04-17 15:31:01.276 11093-11238 / com.example.ferney.bibliotecacur E / Volley:[429] BasicNetwork.performRequest: http ://10.0.2.2/Libro_Titulo.php意外的响应代码404?Consolu = Id&Tit = 1

的PHP

 < ? php header('Content-Type: text/html;charset=utf-8'); include('Conectar.php'); $Tit = $_GET["Tit"]; $eje=$_GET["eje"]; // para solo un archivo $rawdata = array(); //creamos un array if ($resultset = getSQLResultSet("SELECT * FROM `tbl_libro` WHERE $Consolu='$Tit'")) { $rawdata = array(); //creamos un array $i = 0; while ($row = mysqli_fetch_array($resultset)) { $rawdata[$i] = $row; $i++; } echo json_encode($rawdata); } 

  1. 检查您是否已将服务器联机
  2. 确认您请求的URL正确的
  3. 使用PostManAdvanced REST Client 测试Web服务是否正常工作
  4. 如果使用仿真器,则将IP用作10.0.2.2;如果使用的是真实设备,则使用同一网络并使用系统的IP。
  5. 在测试是否存在问题时,请检查您的排球请求

使用org.apache.http将数据发送到服务器的另一种方法

      ServiceHandler jsonParser = new ServiceHandler();
      String URL = "http://10.0.2.2/Libro_Titulo.php?eje="+id;
      String json="";
      json = jsonParser.makeServiceCall(URL, ServiceHandler.GET);

对于makeServiceCall,请访问下面的链接

ServiceHandler.java

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM