Activa las notificaciones push PhoneGap Spain

Foro

Home Forums Apache Cordova Autentificación de App con datos de mi base de datos mysql.

This topic contains 6 replies, has 4 voices, and was last updated by  lordon02 3 meses, 2 semanas .

Viendo 7 respuestas - de la 1 a 7 (de 7 en total)
  • Autentificación de App con datos de mi base de datos mysql.

    Intervenciones
  • davidlou 
    Participant

    Como puedo conseguir que mi app permita o no el acceso con un usuario registrado en mi base de datos mysql.
    Se que para conectar la base de datos debemos crear un archivo php que te devuelva los mediante json para que asi los pueda leer correctamente.
    Pero una vez tenga los datos que debo hacer ? No se casi nada de java script y realmente estoy muy perdido.


    Jose Jesus Perez Rivas
    Jose Jesus Perez Rivas 
    Keymaster

    Hola @davidlou

    Para ello tendrás que crear unos servicios webs que te permitan obtener datos que envíes desde tu app, y que sea el server el que revise en la base de datos mediante php si ese usuario es correcto o no.

    En este tutorial tienes un ejemplo de como crear un servicio web con el que consultar datos en tu server, solo tendrás que generar dichos JSON con la respuesta que te de php al consultar en la base de datos mysql.

    Por ejemplo si las credenciales que el usuario ha enviado desde el formulario de login que tengas en tu app son correctas retornas algo parecido a esto:

    1.  {status: "OK"}

    http://www.phonegapspain.com/tutorial/phonegap-con-jquery-y-respuestas-json/

    Espero te sea de ayuda :)


    CEO y Director de desarrollo en Cero y Uno Desarrollamos Aplicaciones – ¿tienes algún proyecto? ¡trabajemos juntos! contacto@ceroyuno.eshttp://www.ceroyuno.es Fundador de PhoneGap Spain http://www.phonegapspain.com Twitter: https://twitter.com/JoseJ_PR


    davidlou 
    Participant

    Hasta ahora esto es lo que he hecho pero no consigo que me devuelva correctamente los datos o tengo algo erróneo en el js . Gracias por el enlace al menos me a servido para intentarlo unas cuantas veces hasta mas o menos comprender como se hace la conexion pero no entiendo aun como pasan los datos de un lado a otro.
    //index.js con los parámetros de inicio de sesión
    var actividad= {
    // designamos el objeto url
    url: ‘http://192.168.1.182/proyecto/App/’,
    //funcion de login
    login: function (fields) {
    ‘use strict’;
    //hacemos el envio de los datos por post
    $.post(this.url + ‘login’, fields, function (data) {
    $(‘#respuesta’).html(”);
    //nombramos un objeto con el valor de los datos de la respuesta
    var params = JSON.parse(data);
    //si el resultado es correcto pasamos a la pagina opciones
    if (params == ‘ok’) {
    $.mobile.changePage(‘#opciones’);
    }
    //en caso de que no le mostramos el siguiente error
    else {
    $(‘#respuesta’).html(‘Usuario/contraseña incorrecto’);
    }
    });
    }}
    $(‘#fromLogin’).submit(function () {
    ‘use strict’;
    actividad.login($(‘#’ + this.id).serialize());
    return false;
    });
    // Html de la app cordova
    <!– Pagina principal de login –>

    <!– Datos de la cabecera –>

    <h1>Actividades</h1>

    <!–Body –>

    <!– Formulario llamador formLogin–>
    <form id=”formLogin” method=”post”>
    <!–Contenedor de formulario–>
    <fieldset>
    <legend>Registro Usuarios</legend>

    <label for=”user”>Usuario:</label>
    <input type=”text” name=”user” id=”user”>
    <label for=”password”>Contraseña:</label>
    <input type=”password” name=”password” id=”password” autocomplete=”off”>

    <input type=”submit” value=”Acceder” data-icon=”check” data-theme=”b”>

    </fieldset>
    </form>

    <!– Pie de pagina–>

    <h4 class=”piePagina”></h4>

    //php de parte del servido
    <?
    //incluimos conexion
    include “conectadb.php”;
    //si se tiene respuesta de la app
    if(isset($_POST['insert']))
    {
    //variables recogidas por post
    $user= $_POST ['user'];
    $password=$_POST['pwd'];
    //consulta en base de datos
    $sql = “INSERT INTO usuarios (‘user’,'pwd’) VALUES (‘$user’,'$password’)”;
    $resp = mysqli_query($conexion,$sql);
    //Miramos si hay coincidencia de valores
    if (mysqli_num_rows($resp)>0){
    //usuario y contraseña válidos
    $inicio=’ok’;
    print json_encode($inicio)
    }
    //En caso de no ser
    else{
    $inicio=’fallo’;
    print json_encode($inicio);
    }
    //se cierrra la conexion mysql
    mysqli_close($conexion);
    }
    //en caso de que no se recoga respuesta ‘insert’ mostrar error
    else{
    echo “error”
    }
    ?>
    Gracias de antemano

    • This reply was modified 1 año, 1 mes by  davidlou.

    • This reply was modified 1 año, 1 mes by  davidlou.
    lorenzo_martin 
    Participant

    Buenas, has conseguido que te funcione? Esta tarde intentare ver el codigo a ver si me corre bien. Un saludo


    davidlou 
    Participant

    SI ya e solucionado el problema , cuando termine subire el cofigo :) , muchas gracias por el ofrecimiento de igual manera.


    lorenzo_martin 
    Participant

    Ok, espero verlo, muchisimas gracias.


    lordon02 
    Participant

    buenas tardes e intentado ya de varias formas entre ella esta

    <html>
    <head>
    <title>MySqlJs test</title>
    </head>
    <script src=”js/mysql.js”></script>
    <body>
    <pre id=”output”>
    <script>
    MySql.Execute(
    "sql8.freemysqlhosting.net",
    "sql8173720",
    "S4EsfUDHt7",
    "sql8173720",
    "select * from Users",
    function (data) {
    document.getElementById("output").innerHTML = JSON.stringify(data,null,2);
    });
    </script>
    </body>
    </html>

    e usado PHP de forma remota con JS

    e intentando de muchas formas

    en el emulador perfecto en phonegap develepoer app perfecto !!
    pero al generar el APK funciona todo menos los link externos e incluso este codigo que tampoco me funciona. por caridad de Dios alguien me podría indicar que estoy haciendo mal.


Viendo 7 respuestas - de la 1 a 7 (de 7 en total)

You must be logged in to reply to this topic.