Volley: Registrar en mysql-curso parte 3

Hoy continuaremos con Volley: Registrar Usuario, este tutorial constara de tres partes en la primera parte se vio la base de datos, la web services y un ejercicio en android de como listar usuarios  en la segunda parte vimos como iniciar sesión , aquí trataremos algunos conceptos básicos y la implementacion de dicho ejercicio.

 

 

Volley: Registrar Usuario en mysql-curso parte 3

 

registrar usuario

Continuaremos con el ejercicio, pero necesitaras la base de datos y los archivos del curso parte 1 que lo encontraras en el siguiente enlace: Como listar usuario con la libreria volley
Luego puede continuar aquí con el tutorial.

Debes ir a tu build.gradle y agregar la siguiente librería

compile'com.android.support:design:26.0.0-alpha1'

Dentro de la carpeta values debes agregar el siguiente archivo xml

ids.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <item name="visible" type="id"/>
    <item name="masked" type="id"/>
</resources>

 

activity_registrar

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".Registrar">


    <LinearLayout
        android:layout_marginTop="20dp"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:gravity="center"
        android:paddingLeft="24dp"
        android:paddingRight="24dp">

        <android.support.design.widget.TextInputLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="13dp"
            android:hint="Nombre"
            android:textColorHint="@color/colorPrimary">
            <android.support.design.widget.TextInputEditText
                android:textColor="@android:color/black"
                android:backgroundTint="@color/colorPrimaryDark"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginTop="2dp"
                android:layout_marginBottom="2dp"
                android:id="@+id/nombre_registro"
                android:inputType="textCapWords|textPersonName"/>
        </android.support.design.widget.TextInputLayout>

        <android.support.design.widget.TextInputLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="13dp"
            android:hint="Movil"
            android:textColorHint="@color/colorPrimary">
            <android.support.design.widget.TextInputEditText
                android:textColor="@android:color/black"
                android:backgroundTint="@color/colorPrimaryDark"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginTop="2dp"
                android:layout_marginBottom="2dp"
                android:id="@+id/movil_registro"
                android:inputType="textPostalAddress"/>
        </android.support.design.widget.TextInputLayout>


        <android.support.design.widget.TextInputLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:hint="E-mail"
            android:textColorHint="@color/colorPrimary">
            <android.support.design.widget.TextInputEditText
                android:textColor="@android:color/black"
                android:backgroundTint="@color/colorPrimaryDark"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginTop="2dp"
                android:layout_marginBottom="2dp"
                android:id="@+id/correo_registro"
                android:inputType="textEmailAddress"/>
        </android.support.design.widget.TextInputLayout>

        <android.support.design.widget.TextInputLayout
            android:hint="Password"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:textColorHint="@color/colorPrimary">
            <android.support.design.widget.TextInputEditText
                android:textColor="@android:color/black"
                android:backgroundTint="@color/colorPrimaryDark"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginTop="2dp"
                android:layout_marginBottom="2dp"
                android:inputType="textPassword"
                android:id="@+id/password_registro"/>
        </android.support.design.widget.TextInputLayout>

        <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="REGRISTRAR"
            android:id="@+id/btn_registro_usuario"
            android:layout_marginTop="24dp"
            android:layout_marginBottom="12dp"
            android:backgroundTint="@color/colorPrimaryDark"
            android:textColor="@android:color/white"
            android:padding="12dp"/>

    </LinearLayout>
</LinearLayout>

Registrar

 

import android.content.Intent;
import android.support.design.widget.TextInputEditText;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;

import com.androfast.server.appcursovolley.datos.Conexion;
import com.androfast.server.appcursovolley.negocio.Usuario;
import com.android.volley.AuthFailureError;
import com.android.volley.Request;
import com.android.volley.RequestQueue;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.StringRequest;
import com.android.volley.toolbox.Volley;

import org.json.JSONException;
import org.json.JSONObject;

import java.util.HashMap;
import java.util.Map;

public class Registrar extends AppCompatActivity {
    TextView nombre,movil,correo,clave;
    Button registrar;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_registrar);

        nombre=(TextInputEditText)findViewById(R.id.nombre_registro);
        movil=(TextInputEditText)findViewById(R.id.movil_registro);
        correo=(TextInputEditText)findViewById(R.id.correo_registro);
        clave=(TextInputEditText)findViewById(R.id.password_registro);
        registrar=(Button)findViewById(R.id.btn_registro_usuario);

        registrar.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                registrar();
            }
        });
    }

    public void registrar(){
        RequestQueue queue = Volley.newRequestQueue(Registrar.this);

        StringRequest stringRequest = new StringRequest(Request.Method.POST, Conexion.URL_WEB_SERVICES + "registrar-usuario.php",
                new Response.Listener<String>() {
                    @Override
                    public void onResponse(String response) {
                        Usuario user=new Usuario();
                        try {
                            JSONObject objResultado = new JSONObject(response);
                            String extadox=objResultado.get("estado").toString();
                            if(!extadox.equalsIgnoreCase("exito")){
                                Toast.makeText(Registrar.this,"error",Toast.LENGTH_LONG).show();

                            }else{

                                Intent intent= new Intent(Registrar.this,IniciarSesion.class);
                                startActivity(intent);
                            }

                        } catch (JSONException e) {
                            e.printStackTrace();
                        }

                    }
                }, new Response.ErrorListener() {
            @Override
            public void onErrorResponse(VolleyError error) {

            }
        }){
            protected Map<String, String> getParams() throws AuthFailureError {
                Map<String, String> params= new HashMap<>();
                params.put("nombre", nombre.getText().toString());
                params.put("email",correo.getText().toString());
                params.put("movil", movil.getText().toString());
                params.put("clave",clave.getText().toString());
                return params;

            }
        };
        queue.add(stringRequest);
    }
}

 

En tu IniciarSesion debes agregar la siguientes lineas, te aconsejo que revises el video del final para evitar confusiones:

 nuevo=(TextView)findViewById(R.id.txtNuevoUsuario);
nuevo.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        Intent intent= new Intent(IniciarSesion.this,Registrar.class);
        startActivity(intent);
    }
});

 

Puedes descargarlo del siguiente link: aquí

Password: www.androfast.com

 

Volley: Listar usuario en mysql-curso parte 1

Volley:Login en mysql-curso parte 2

 

0

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *