|
||
|
![]() |
![]() |
Programación y Desarrollo para Android Subforo exclusivo para temas de programación de software para PDAs y desarrollo de aplicaciones, interfaces, etc bajo Android |
![]() |
|
Herramientas |
#1
|
||||
|
||||
![]()
Hola
Hice este código para enviar variables a un archivo. Php dando url y esta insterta la variable en una bd mysql. Cuando finaliza el proceso, muestra un mensaje a través del "Toast", que dice que inserto correctamente y limpia los EditText. El problema es que como haría para que cuando se ejecute con el botón, este inserte los datos y me lleve a otra pagina o activity y mostrar los resultado que obtengo dle archivo .php ? Nota: use AsyncTask para enviar las variables al archivo .php Les agradecería sus comentario y ayuda. Estoy aprendiendo este nuevo lenguaje. Gracias Código:
package com.example.pruebaenviarvariables; import java.io.IOException; import java.io.UnsupportedEncodingException; import java.util.ArrayList; import java.util.List; import org.apache.http.NameValuePair; import org.apache.http.client.ClientProtocolException; import org.apache.http.client.HttpClient; import org.apache.http.client.entity.UrlEncodedFormEntity; import org.apache.http.client.methods.HttpPost; import org.apache.http.impl.client.DefaultHttpClient; import org.apache.http.message.BasicNameValuePair; import android.app.Activity; import android.content.pm.ActivityInfo; import android.os.AsyncTask; import android.os.Bundle; import android.util.Log; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; import android.widget.ImageButton; import android.widget.Toast; import com.example.pruebaenviarvariables.R; public class MainActivity extends Activity { private EditText dni; private EditText nombre; private EditText telefono; private EditText email; private Button insertar; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR_PORTRAIT); setContentView(R.layout.fragment_main); nombre = (EditText) findViewById(R.id.nombre); dni=(EditText)findViewById(R.id.dni); telefono=(EditText)findViewById(R.id.telefono); email=(EditText)findViewById(R.id.email); //Insertamos los datos de la persona. insertar=(Button)findViewById(R.id.insertar); Log.v("Insertar value ", "= "+insertar); insertar.setOnClickListener(new OnClickListener(){ @Override public void onClick(View v) { // TODO Auto-generated method stub new Insertar(MainActivity.this).execute(); } }); } //Inserta los datos de las Personas en el servidor. private boolean insertar(){ HttpClient httpclient; List<NameValuePair> nameValuePairs; HttpPost httppost; httpclient=new DefaultHttpClient(); httppost= new HttpPost("xxxxx.insert.php"); // Url del Servidor //Añadimos nuestros datos nameValuePairs = new ArrayList<NameValuePair>(4); nameValuePairs.add(new BasicNameValuePair("dni",dni.getText().toString().trim())); nameValuePairs.add(new BasicNameValuePair("nombre",nombre.getText().toString().trim())); nameValuePairs.add(new BasicNameValuePair("telefono",telefono.getText().toString().trim())); nameValuePairs.add(new BasicNameValuePair("email",email.getText().toString().trim())); try { httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs)); httpclient.execute(httppost); return true; } catch (UnsupportedEncodingException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (ClientProtocolException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } return false; } //AsyncTask para insertar Personas class Insertar extends AsyncTask<Void,String,Boolean>{ private Activity context; Insertar(Activity context){ this.context=context; } @Override protected Boolean doInBackground(Void... params) { // TODO Auto-generated method stub insertar(); return true; } @Override protected void onPostExecute(Boolean result) { if(result) Toast.makeText(context, "Persona insertada con éxito", Toast.LENGTH_LONG).show(); nombre.setText(""); dni.setText(""); telefono.setText(""); email.setText(""); } } } |
|
#2
|
||||
|
||||
Lee los datos del HttpResponse que devuelve:
Código:
HttpResponse response = httpclient.execute(httppost); InputStream stream = response.getEntity().getContent(); Almacena esos datos como quieras, como un objeto, un String, etc. Luego, cuando vayas a usar startActivity(Intent), a ese Intent debes añadirle un los datos: Código:
Intent intent = new Intent(this, NuevaActivity.class); intent.putExtra("resultado", variableResultado); startActivity(intent); Código:
public void onCreate(...) { ... Tipo resultado = getIntent().getExtras().get*Tipo*("resultado"); ... } Espero que te sirva. Un saludo. Última edición por Arasthel Día 08/07/14 a las 20:47:17. |
Gracias de parte de: | ||
#3
|
||||
|
||||
Gracias. Me sirvió de mucho
|
![]() |
![]() |
||||||
|