Android - base datos conexion

 
Vista:
Imágen de perfil de Francisco
Val: 359
Oro
Ha mantenido su posición en Android (en relación al último mes)
Gráfica de Android

base datos conexion

Publicado por Francisco (316 intervenciones) el 02/12/2016 20:12:20
No consigo conectarme a la base de datos alguien me puede echar una mano
Gracias

Estoy udsando la libreria mysql-connector-java-5.1.24-bin

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
tv=(TextView)findViewById(R.id.user);
 
 
try {
	Class.forName("com.mysql.jdbc.Driver").newInstance();
	con=DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/prueba","root","");
	Statement st=(Statement)con.createStatement();
 
	rs=st.executeQuery("select dni from personas ");
 
	while(rs.next()){
		str=rs.getString(0) ;
 
		tv.setText(""+str);    // aqui muestro el resultado pero lanza un error
 
	}
} catch (InstantiationException e) {
	// TODO Auto-generated catch block
	e.printStackTrace();
} catch (IllegalAccessException e) {
	// TODO Auto-generated catch block
	e.printStackTrace();
} catch (ClassNotFoundException e) {
	// TODO Auto-generated catch block
	e.printStackTrace();
} catch (java.sql.SQLException e) {
	// TODO Auto-generated catch block
	e.printStackTrace();
}


Saludos .....
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 198
Plata
Ha mantenido su posición en Android (en relación al último mes)
Gráfica de Android

base datos conexion

Publicado por Luis (97 intervenciones) el 04/12/2016 01:48:11
Tengo un ejército en casa mañana lo miro como lo hice y te cuento.

Te da algún error ??
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Francisco
Val: 359
Oro
Ha mantenido su posición en Android (en relación al último mes)
Gráfica de Android

base datos conexion

Publicado por Francisco (316 intervenciones) el 04/12/2016 10:22:37
Estoy probando con Xamp
Nada mas conectar a la base de datos me lanza el error
La consulta va despues pero primero hay que solucionar el error de conexion

Error com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
Error The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
String url="jdbc:mysql://127.0.0.1:3306/BaseDatos";
String driver="com.mysql.jdbc.Driver";
String username="root";//user must have read-write permission to Database
String password= "";//user password
 
try{
    Class.forName(driver).newInstance();//loading driver
    Connection con = DriverManager.getConnection(url,username,password);
 
}
catch(Exception e){
	tinfo.setText(e.toString());
	// Aqui me lanza el error  ;
 
                //  Error com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
                //  Error The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
 
    e.printStackTrace();
}

Gracias por todo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 198
Plata
Ha mantenido su posición en Android (en relación al último mes)
Gráfica de Android

base datos conexion

Publicado por Luis (97 intervenciones) el 04/12/2016 20:29:01
Hola Francisco hice un ejercicio donde enbiava los datos introducidos en editText y los guardaba en una base de datos MySQL en un servidor gratuito en la nube.

Por si te sirve o le sirve a alguien a qui te dejo como lo realize.

Esta la clase conector

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
import android.content.Context;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
 
public class Detector {
 
	private Context contexto;
 
	public Detector(Context contexto)
	{
		this.contexto = contexto;
 
	}
 
	public boolean estasConectado()
	{
		ConnectivityManager conectividad = (ConnectivityManager)
											contexto.getSystemService(Context.CONNECTIVITY_SERVICE);
 
		if (conectividad != null)
		{
			NetworkInfo[] informacion = conectividad.getAllNetworkInfo();
 
			if(informacion != null)
				for (int i= 0; i< informacion.length; i++)
					if (informacion[i].getState() == NetworkInfo.State.CONNECTED)
						return true;
 
		}// fin de if conectividad
		return false;
	}
}




Esta es la forma de como enviaba los datos en JSON para ser guardados en la base de datos en la nube


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
import java.io.IOException;
 
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.ResponseHandler;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.BasicResponseHandler;
import org.apache.http.impl.client.DefaultHttpClient;
 
import android.annotation.SuppressLint;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.os.Vibrator;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
 
public class IniciarRegistro extends Activity {
 
	Boolean hayInt = false;
	Detector objDetector;
 
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.iniciarregistro);
 
		Button btn_registrar = (Button) findViewById(R.id.btn_registrar);
 
		final EditText cc = (EditText) findViewById(R.id.et_Matricula);
 
 
		final EditText nombre = (EditText) findViewById(R.id.et_Nombre);
		final EditText apellido = (EditText) findViewById(R.id.et_Apellido);
	 final EditText email = (EditText) findViewById(R.id.et_correoelectronico);
 
	 objDetector = new Detector(getApplicationContext());
		btn_registrar.setOnClickListener(new View.OnClickListener() {
 
			@SuppressLint("ShowToast")
			@Override
			public void onClick(View v) {
 
				//	acer();
					hayInt = objDetector.estasConectado();
 
					if(hayInt)
						siconexion(true);
					else
						MostrarAlerta(IniciarRegistro.this, "Conexion a Internet", "No estas conectdo a internet. \nRevise su conexion", true);
 
 
 
			}
 
 
 
			private void siconexion(boolean b) {
				// TODO Auto-generated method stub
 
				// TODO Auto-generated method stub
				try {
					httpGetData("http://cgfandroiddeveloper.hostoi.com/prueba/registrarUsuario.php?cc="
							+ cc.getText()
							+ "&nombre="
							+ nombre.getText()
							+ "&apellido="
							+ apellido.getText()
							+ "&direccion="
							+ direccion.getText()
					Toast.makeText(getApplicationContext(),
							"El dato ha sido enviado correctamente", 1000)
							.show();
				} catch (Exception e) {
					Toast.makeText(
							getApplicationContext(),
							"Error en el envio de la informacion, verifique su conexion a internet y vuelva a intentarlo.",
							1000).show();
 
				}
 
 
 
			}
		});
	}
	protected void MostrarAlerta(Context cotexto, String titulo,
			String mensaje, boolean estado) {
		// TODO Auto-generated method stub
	AlertDialog alerta = new AlertDialog.Builder(cotexto).create();
 
		alerta.setTitle(titulo);
		alerta.setMessage(mensaje);
		alerta.setButton("OK", new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int which) {
            }
        });
 
		alerta.show();
	}
 
	public String httpGetData(String mURL) {
		String response = "";
		mURL = mURL.replace(" ", "%20");
		Log.i("LocAndroid Response HTTP Threas", "Ejecutando get 0: " + mURL);
		HttpClient httpclient = new DefaultHttpClient();
 
		Log.i("LocAndroid Response HTTP Thread", "Ejecutando get 1");
		HttpGet httppost = new HttpGet(mURL);
		Log.i("LocAndroid Response HTTP Thread", "Ejecutando get 2");
		try {
 
			Log.i("LocAndroid Response HTTP", "Ejecutando get");
			// Execute HTTP Post Request
			ResponseHandler<String> responseHandler = new BasicResponseHandler();
			response = httpclient.execute(httppost, responseHandler);
			Log.i("LocAndroid Response HTTP", response);
		} catch (ClientProtocolException e) {
			Log.i("LocAndroid Response HTTP ERROR 1", e.getMessage());
			// TODO Auto-generated catch block
		} catch (IOException e) {
 
			Log.i("LocAndroid Response HTTP ERROR 2", e.getMessage());
			// TODO Auto-generated catch block
		}
		return response;
 
	}


Y esta la forma en la que realizo una busqueda clasebuscar


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
import java.io.IOException;
 
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.ResponseHandler;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.BasicResponseHandler;
import org.apache.http.impl.client.DefaultHttpClient;
import org.json.JSONArray;
import org.json.JSONException;
 
import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.TextView;
import android.widget.Toast;
 
 
public class ResultadoBusqueda extends Activity {
 
	private TextView nombre;
	private TextView apellido;
	private TextView direccion;
 
	 private StringBuilder mensaje = new StringBuilder();
 
 
 
	 @Override
	    protected void onCreate(Bundle savedInstanceState) {
	        super.onCreate(savedInstanceState);
	        setContentView(R.layout.resulttado_busqueda2);
 
	 //       valor1 = (EditText) findViewById (R.id.editText1);
	  //      myEditValue = valor1.getText().toString();
 
 
 
	        Toast.makeText(getApplicationContext(), "Estamos en nueva actividad.", Toast.LENGTH_LONG).show();
	      //Referencia a los objetos del layout
	        muestranombre = (TextView) findViewById( R.id.editTextnombre );
	 //       myEditValue = muestranombre.getText().toString();
 
	        telefono1 = (TextView) findViewById( R.id.tv_Telefono1 );
	        telefono2 = (TextView) findViewById( R.id.tv_Telefono2 );
	        telefono3 = (TextView) findViewById( R.id.tv_Telefono3 );
 
	        //Recupera parametros y los muestra en el TextView
	        Intent intent = getIntent();
	        Bundle bundle = intent.getExtras();
	         if ( bundle != null ) {
	          mensaje.append( bundle.getInt("Numero") );
	         }
	     //    textView.setTextSize(33);
	         muestranombre.setText( mensaje );
 
	     //    final EditText cc=(EditText)findViewById(R.id.editTextCedula);
	          TextView nombre=(TextView)findViewById(R.id.tv_Nombre);
	          TextView apellido=(TextView)findViewById(R.id.tv_Apellido);
	          TextView direccion=(TextView)findViewById(R.id.tv_Direccion);
 
 
 
					JSONArray ja=null;
					try {
						String data;
						data=httpGetData("http://cgfandroiddeveloper.hostoi.com/prueba/consultarUsuario.php?cc="+muestramatricula.getText());
						if(data.length()>1)
							ja=new JSONArray(data);
 
 
					} catch (JSONException e) {
						// TODO Auto-generated catch block
						e.printStackTrace();
						Toast.makeText(getApplicationContext(), "Nombre no registrado deveria registrarse.", Toast.LENGTH_LONG).show();
						nombre.setText("desconocido");
						apellido.setText("");
						direccion.setText("");
						telefonouno.setText("");
					}
					try{
 
 
 
			//			Intent i = new Intent(MainActivity.this, NuevaActividadConResultados.class);//Creamos un nuevo intent para llamar a la siguiente actividad
					nombre.setText(ja.getString(1));
					apellido.setText(ja.getString(2));
					direccion.setText(ja.getString(3));
 
 
			//		 startActivity(i);//Ejecutamos la actividad para que muestre la segunda actividad
 
					} catch (Exception e) {
 
 
					}
 
 
	 }
 
 
	private String httpGetData(String mURL) {
        String response="";
        mURL=mURL.replace(" ", "%20");
         Log.i("LocAndroid Response HTTP Threas","Ejecutando get 0: "+mURL);
          HttpClient httpclient = new DefaultHttpClient();
 
         Log.i("LocAndroid Response HTTP Thread","Ejecutando get 1");
    	HttpGet httppost = new HttpGet(mURL);
         Log.i("LocAndroid Response HTTP Thread","Ejecutando get 2");
try {
 
 
         Log.i("LocAndroid Response HTTP","Ejecutando get");
        // Execute HTTP Post Request
      ResponseHandler<String> responseHandler=new BasicResponseHandler();
        	response = httpclient.execute(httppost,responseHandler);
         Log.i("LocAndroid Response HTTP",response);
    	} catch (ClientProtocolException e) {
        Log.i("LocAndroid Response HTTP ERROR 1",e.getMessage());
        // TODO Auto-generated catch block
    } catch (IOException e) {
 
        Log.i("LocAndroid Response HTTP ERROR 2",e.getMessage());
        // TODO Auto-generated catch block
    }
    return response;


Espero le sirva algo de ayuda.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Francisco
Val: 359
Oro
Ha mantenido su posición en Android (en relación al último mes)
Gráfica de Android

base datos conexion

Publicado por Francisco (316 intervenciones) el 04/12/2016 21:05:38
Este codido necesita archivos.php verdad?
Lo veo un poco complicado para mi ,quiero realizar una conexion simple y a partir de ahi ir avanzando.
Por eso queria intentar hacerlo funcionar conla libreria mysql-connector .

Pero todos los ejemplos que hay por ahi no me funcionan.

Intentare volver a php y buscar un codigo facilito que funcione,ya lo he intentado muchas veces y casi lo consigo.

de todas formas muchas gracias por el codigo.

saludos...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 198
Plata
Ha mantenido su posición en Android (en relación al último mes)
Gráfica de Android

base datos conexion

Publicado por Luis (97 intervenciones) el 04/12/2016 21:34:28
Si quieres el php me lo dices y lo busco
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Francisco
Val: 359
Oro
Ha mantenido su posición en Android (en relación al último mes)
Gráfica de Android

base datos conexion

Publicado por Francisco (316 intervenciones) el 04/12/2016 21:40:55
Bien así puedo probar el código y te comento si funciona.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 198
Plata
Ha mantenido su posición en Android (en relación al último mes)
Gráfica de Android

base datos conexion

Publicado por Luis (97 intervenciones) el 05/12/2016 20:46:26
Hola de nuevo no recuerdo de donde saque este tutorial pero me funciono con minimos conocimientos y cuando digo minimos digo minimos.

Si alguien reconoce la procedencia que lo diga y pondre el agradecimineto.

Espero te sirva Francisco

Ya me comentas
Tengo el proyecto android, el JSON, y codigo php en un rar si alguen los necesita que me envie un email.

Hoy vamos a aprender como conectar nuestra aplicacion android a una base de datos mysql a través de PHP y JSON

Para realizar este taller se debe tener instalado los siguientes programas:
- wampServer
- Eclipse ADT Bundle + Android SDK
¿Qué haremos?
En este video tutorial vamos a crear una aplicacion para dispositivos con sistema operativo android desde la que será posible consultar y registrar información de usuarios en una base de datos en internet
¿Cómo lo haremos?
Esta práctica se separa en dos partes:
- La creación del servicio web en PHP
- Programación de la aplicación para Android

Primera parte:
- Creación del servicio web:
Nuestro servicio web consistirá en una serie de scripts en PHP que se encargaran de ser intermediarios entre la aplicación en Android y el servidor de base de datos en MYSQL. A estos scripts será posible hacerles consultas usando el método GET del protocolo HTTP, a lo que estos contestaran con arreglos JSON, que contendrán la información requerida.
Paso 1: Crear base datos en MySQL llamada dbprueba
Paso 2: Crear tabla llamada tablaprueba con los suigientes campos:
Cedula ----- bigint ---- unique key
Nombre ----text--- utf8
Apellido ----text--- utf8
Dirección ----text--- utf8
Teléfono ----text--- utf8


Paso 3: Programar scripts en PHP
functions.php
Este script contiene dos funciones para ejecutar comandos SQL en la base de datos
Codigo PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
<?php
header( 'Content-Type: text/html;charset=utf-8' );
 
 
function ejecutarSQLCommand($commando){
 
  $mysqli = new mysqli("localhost", "root", "", "dbprueba");
 
/* check connection */
if ($mysqli->connect_errno) {
    printf("Connect failed: %s\n", $mysqli->connect_error);
    exit();
}
 
if ( $mysqli->multi_query($commando)) {
     if ($resultset = $mysqli->store_result()) {
    	while ($row = $resultset->fetch_array(MYSQLI_BOTH)) {
 
    	}
    	$resultset->free();
     }
 
 
}
 
 
 
$mysqli->close();
}
 
function getSQLResultSet($commando){
 
 
  $mysqli = new mysqli("localhost", "root", "", "dbprueba");
 
/* check connection */
if ($mysqli->connect_errno) {
    printf("Connect failed: %s\n", $mysqli->connect_error);
    exit();
}
 
if ( $mysqli->multi_query($commando)) {
	return $mysqli->store_result();
 
 
 
 
}
 
 
 
$mysqli->close();
}
 
 
?>

registrarUsuario.php
Este script se encargara de registrar o modificar información en la tabla anteriormente creada. El script recibirá los parámetros a través de una petición HTTP GET, ejecutará el comando y devolverá un “ok” si la operación fue exitosa, de lo contrario enviará un mensaje de error

Código PHP:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
<?php include ('functions.php');
$cc=$_GET['cc'];
$nombre=$_GET['nombre'];
$apellido=$_GET['apellido'];
$direccion=$_GET['direccion'];
$telefono=$_GET['telefono'];
 
 
ejecutarSQLCommand("INSERT INTO  `tablaprueba` (
`cc` ,
`nombre` ,
`apellido` ,
`direccion`,
`telefono`
)
VALUES (
'$cc' ,
'$nombre' ,
'$apellido' ,
'$direccion',
'$telefono')

 ON DUPLICATE KEY UPDATE `nombre`= '$nombre',
`apellido`='$apellido' ,
`direccion`='$direccion',
`telefono`='$telefono'
;");
 
 ?>
 
consultarUsuario.php
Este script recibirá como parámetro el número de cedula y devolverá un arreglo de tipo JSON que contendrá el resultado de la consulta
Código PHP:
<?php
include('functions.php');
$cc=$_GET['cc'];
if ($resultset = getSQLResultSet("SELECT cc,nombre,apellido,direccion,telefono
FROM  `tablaprueba` where cc='$cc'")) {
 
    	while ($row = $resultset->fetch_array(MYSQLI_NUM)) {
    	echo json_encode($row);
 
    	}
 
   }
 
?>

Segunda parte:
- Programación de la aplicación para Android
La aplicación que programaremos a continuación accederá los scripts anteriormente creados y mostrará los datos en una interfaz amigable para el usuario final
Paso 1: Crear un nuevo proyecto de android en eclipse
Paso 2: Copiar el siguiente xml y pegarlo en el xml de la actividad principal


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity" >
 
    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:layout_marginLeft="30dp"
        android:layout_marginTop="34dp"
        android:text="Cedula:" />
 
    <TextView
        android:id="@+id/textView4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignRight="@+id/textView3"
        android:layout_below="@+id/textView3"
        android:layout_marginTop="25dp"
        android:text="Direccion:" />
 
    <TextView
        android:id="@+id/textView2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignRight="@+id/textView1"
        android:layout_below="@+id/textView1"
        android:layout_marginTop="26dp"
        android:text="Nombre:" />
 
    <TextView
        android:id="@+id/textView3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignRight="@+id/textView2"
        android:layout_below="@+id/textView2"
        android:layout_marginTop="29dp"
        android:text="Apellidos:" />
 
    <TextView
        android:id="@+id/textView5"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignRight="@+id/textView4"
        android:layout_below="@+id/textView4"
        android:layout_marginTop="31dp"
        android:text="Telefono:" />
 
    <EditText
        android:id="@+id/editTextCedula"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBottom="@+id/textView1"
        android:layout_alignParentRight="true"
        android:ems="10"
        android:inputType="textPersonName" />
 
    <EditText
        android:id="@+id/editTextNombre"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBottom="@+id/textView2"
        android:layout_alignParentRight="true"
        android:ems="10"
        android:inputType="textPersonName" />
 
    <EditText
        android:id="@+id/editTextApellido"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_above="@+id/textView4"
        android:layout_alignParentRight="true"
        android:ems="10"
        android:inputType="textPersonName" >
 
        <requestFocus />
    </EditText>
 
    <EditText
        android:id="@+id/editTextDireccion"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_above="@+id/textView5"
        android:layout_alignParentRight="true"
        android:ems="10" />
 
    <EditText
        android:id="@+id/editTextTelefono"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBottom="@+id/textView5"
        android:layout_alignParentRight="true"
        android:ems="10"
        android:inputType="phone" />
 
    <Button
        android:id="@+id/button2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/button1"
        android:layout_alignBottom="@+id/button1"
        android:layout_marginLeft="16dp"
        android:layout_toRightOf="@+id/button1"
        android:text="Consultar" />
 
    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/textView1"
        android:layout_below="@+id/textView5"
        android:layout_marginLeft="27dp"
        android:layout_marginTop="28dp"
        android:text="Enviar" />
 
</RelativeLayout>

Paso 3: Añadir permiso de internet en el Manifest.
Paso 4: Agregar el archivo JSON – 1.0.jar al proyecto.
Paso 5: Agregar la siguiente función a la actividad principal

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
public String httpGetData(String mURL) {
        String response="";
        mURL=mURL.replace(" ", "%20");
         Log.i("LocAndroid Response HTTP Threas","Ejecutando get 0: "+mURL);
          HttpClient httpclient = new DefaultHttpClient();
 
         Log.i("LocAndroid Response HTTP Thread","Ejecutando get 1");
    	HttpGet httppost = new HttpGet(mURL);
         Log.i("LocAndroid Response HTTP Thread","Ejecutando get 2");
try {
 
 
         Log.i("LocAndroid Response HTTP","Ejecutando get");
        // Execute HTTP Post Request
      ResponseHandler<String> responseHandler=new BasicResponseHandler();
        	response = httpclient.execute(httppost,responseHandler);
         Log.i("LocAndroid Response HTTP",response);
    	} catch (ClientProtocolException e) {
        Log.i("LocAndroid Response HTTP ERROR 1",e.getMessage());
        // TODO Auto-generated catch block
    } catch (IOException e) {
 
        Log.i("LocAndroid Response HTTP ERROR 2",e.getMessage());
        // TODO Auto-generated catch block
    }
    return response;
 
}


Paso 6: Agregar el siguiente código al OnCreate()

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
Button b1=(Button)findViewById(R.id.button1);
final EditText cc=(EditText)findViewById(R.id.editTextCedula);
final EditText nombre=(EditText)findViewById(R.id.editTextNombre);
final EditText apellido=(EditText)findViewById(R.id.editTextApellido);
final EditText direccion=(EditText)findViewById(R.id.editTextDireccion);
final EditText telefono=(EditText)findViewById(R.id.editTextTelefono);
 
b1.setOnClickListener(new View.OnClickListener() {
 
	@SuppressLint("ShowToast") @Override
	public void onClick(View v) {
		// TODO Auto-generated method stub
		try{
			httpGetData("http://10.0.2.2/prueba/registrarUsuario.php?cc="+cc.getText()+
					"&nombre="+nombre.getText()+"&apellido="+apellido.getText()+
					"&direccion="+direccion.getText()+"&telefono="+telefono.getText());
			Toast.makeText(getApplicationContext(), "El dato ha sido enviado correctamente", 1000).show();
		}catch(Exception e){
			Toast.makeText(getApplicationContext(), "Error en el envio de la informacion, verifique su conexion a internet y vuelva a intentarlo.", 1000).show();
 
		}
 
	}
});
 
cc.setOnFocusChangeListener(new View.OnFocusChangeListener() {
 
	@Override
	public void onFocusChange(View v, boolean hasFocus) {
		// TODO Auto-generated method stub
		if(hasFocus==false){
			JSONArray ja=null;
			try {
				String data;
				data=httpGetData("http://10.0.2.2/prueba/consultarUsuario.php?cc="+cc.getText());
				if(data.length()>1)
					ja=new JSONArray(data);
 
 
			} catch (JSONException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
				Toast.makeText(getApplicationContext(), "Error recuperando la informacion del servidor, verifique su conexion a internet y vuelva a intentarlo.", 1000).show();
 
			}
			try{
 
			nombre.setText(ja.getString(1));
			apellido.setText(ja.getString(2));
			direccion.setText(ja.getString(3));
			telefono.setText(ja.getString(4));
			} catch (Exception e) {
 
				nombre.setText("");
				apellido.setText("");
				direccion.setText("");
				telefono.setText("");
			}
		}
	}
});


Mucha suerte
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Francisco
Val: 359
Oro
Ha mantenido su posición en Android (en relación al último mes)
Gráfica de Android

base datos conexion

Publicado por Francisco (316 intervenciones) el 05/12/2016 23:13:18
Gracias por el código lo pruebo y te comento,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Francisco
Val: 359
Oro
Ha mantenido su posición en Android (en relación al último mes)
Gráfica de Android

base datos conexion

Publicado por Francisco (316 intervenciones) el 06/12/2016 12:38:49
No he podido hacerlo funcionar el codigo le faltaban perentresis he intentado reducir el codigo para tratar solo lo basico.
No se cual es la actividad principal.
hay View que estan declarados y no estan:
si como dices tienes el codigo complero me lo puedes mandar por correo.
debo importar alguna libreria.

De todas formas Mil Gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 198
Plata
Ha mantenido su posición en Android (en relación al último mes)
Gráfica de Android

base datos conexion

Publicado por Luis (97 intervenciones) el 12/12/2016 10:32:00
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

base datos conexion

Publicado por breyner garzom (1 intervención) el 22/03/2017 13:21:12
Muy buenos dias Luis quisiera poder preguntarte o pedirle el favor de si puede compartirme este proyecto o si es posible me puede ayudar con unas cositas de esto cualquier cosa mi correo es bnaruto-shinpuden@hotmail.com
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar