phonegap:将数据库值存储在本地存储中

洛克克斯

这是我第一次使用phonegap和本地存储。所以,如果我问些愚蠢的话,我表示歉意。

我正在尝试为移动应用程序创建一个登录/注册页面。我在html / js / jquery中创建了一个前端页面,在php中创建了后端。

在php中,我们使用会话来存储一些数据,但是在html中,没有会话。但是我知道我们可以使用本地存储来存储这些值。这是我的用于身份验证的php代码。

<?php
session_start();
header("Access-Control-Allow-Origin: *");
header('Content-Type: application/json');
require_once('include/db.php');
require_once('functions.php');
$res=array();
$res['errors']=array();
if(isset($_POST)) {
    if(empty($_POST['email'])) {
        array_push($res['errors'], "Email could not be empty");
    }
    if(empty($_POST['password'])) {
        array_push($res['errors'], "Password could not be empty");
    }
    if(!empty($_POST['email']) && !isValidEmail($_POST['email'])) {
        array_push($res['errors'], "Invalid Email Format");
    }

        $email = $_POST['email'];
        $password = $_POST['password'];
        $now = date('Y-m-d H:i:s'); 

    if(empty($res['errors'])) { 
        $result = $mysqli->prepare("SELECT uid,pic,fname,last_seen FROM users where email= ? and password = ? and status = '1'");
        $result ->bind_param("ss", $email, $password);
        $result->execute();
        $result->store_result();

        $result->bind_result($uid, $pic, $fname, $last_seen);
        if($result->num_rows == 1){

             while ($result->fetch()) {
                        $_SESSION['uid'] = $uid;
                        $_SESSION['pic'] = $pic;
                        $_SESSION['name'] = $fname;
                        $_SESSION['last_login'] = $last_seen;
            }

            $res['success'] = true;
        }
        else{
            array_push($res['errors'], 'Invalid login details');
            $res['success'] = false;

        }
    }else{
        $res['success'] = false;        
    }
    session_write_close();
     echo json_encode($res);
}
?>

这是ajax代码。

<script type="text/javascript">
$('document').ready(function()
{
            $("#login").on("submit", function(e) {              
                e.preventDefault;
                var btn = $('#btn-login');
                btn.button('loading');
                $.ajax({
                    type: 'post',
                    url: 'loginexec.php',
                    cache: false,
                    dataType: 'json',
                    data: $('form#login').serialize(),
                    beforeSend: function() { 
                        $("#validation-errors").hide().empty(); 
                    },
                    success: function(data) {
                        if(data.success == false)
                            {
                                var arr = data.errors;
                                $.each(arr, function(index, value)
                                {
                                    if (value.length != 0)
                                    {
                                        $("#validation-errors").append('<div class="alert alert-danger"><strong>'+ value +'</strong><div>');
                                    }
                                });
                                $("#validation-errors").show(); 
                                btn.button('reset');                            
                            } else {
                                localStorage.login="true";
                                localStorage.email=email;
                                localStorage.id=id;

                                 window.location.href = 'user_profile.php';
                            }
                    },
                    error: function(xhr, textStatus, thrownError) {
                        alert('Something went to wrong.Please Try again later...');
                        btn.button('reset');
                    }
                });             
                return false;
            });
        });

    </script>

我想将这些值存储在本地存储中,但不确定如何执行此操作。

$uid;
$pic;
$fname;
$last_seen;

请指教。

丹尼尔·雷施(Daniel Resch)

我在这里看到的第一个错误是用法localStorage错误:

使用window.localStorage.setItem("login",1);而不是localStorage.login ="true";

然后使用它 window.localStorage.getItem("login");

但是,我认为这也不是一个好主意,localStorage因为其他任何恶意应用程序都可以访问所有localStorage值,所以它还可以存储会话(甚至是电子邮件地址)之类的内容-为什么不在每个页面上执行单个ajax请求首先检查是否建立了有效的会话,以及是否未重定向到登录名。在这种情况下,也不需要存储last_seen时间,会话和良好的身份验证应始终在服务器端进行。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

jQuery编程将值存储在sqlite数据库中

来自分类Dev

使用For循环将值存储在数据库中

来自分类Dev

需要加密以将值存储在数据库中

来自分类Dev

如何将数据从服务器存储到Phonegap中的数据库

来自分类Dev

使用Cygnus将Orion ContextBroker中的历史数据存储在本地Hadoop数据库中

来自分类Dev

将JSON数据存储到android中的本地数据库

来自分类Dev

将JSON数据存储到android中的本地数据库

来自分类Dev

防止用户操纵将存储在Android本地数据库中的时间?

来自分类Dev

在文件/文件夹中本地存储数据库

来自分类Dev

AS3。在本地 SQL 数据库中存储数组

来自分类Dev

使用python将列表中的值从数据帧存储到数据库中

来自分类Dev

根据单选按钮值将值存储在sqlite数据库的多个表中

来自分类Dev

我的代码没有将数据值存储到Sql数据库中

来自分类Dev

JSON对象数组,用于将表单数据存储在本地临时存储中(PhoneGap项目)

来自分类Dev

如何将ICollection值存储到MVC5中的数据库中?

来自分类Dev

将数据库中的多个值存储到一个变量中

来自分类Dev

如何将ICollection值存储到MVC5中的数据库中?

来自分类Dev

如何将表单中的值存储到mySQL数据库中?

来自分类Dev

将配置存储在Laravel中的数据库中

来自分类Dev

将值存储在数据库中或对其进行硬编码

来自分类Dev

使用PHP表单将值存储到数据库中

来自分类Dev

我正在尝试将复杂的复选框形式的值存储在mysql数据库中

来自分类Dev

最好的方法,将已更改和未更改的值存储到MySql数据库中

来自分类Dev

如何将HashMap存储在值为Arrays的数据库中?

来自分类Dev

将动态编辑文本值存储在数据库中

来自分类Dev

Symfony 3:Doctrine将NULL值存储在数据库中

来自分类Dev

如何将编码值存储到数据库中

来自分类Dev

将csv的值存储在表数据库的不同列中

来自分类Dev

如何将 jQuery 范围滑块值转换为表单以存储在 Django 的数据库中

Related 相关文章

  1. 1

    jQuery编程将值存储在sqlite数据库中

  2. 2

    使用For循环将值存储在数据库中

  3. 3

    需要加密以将值存储在数据库中

  4. 4

    如何将数据从服务器存储到Phonegap中的数据库

  5. 5

    使用Cygnus将Orion ContextBroker中的历史数据存储在本地Hadoop数据库中

  6. 6

    将JSON数据存储到android中的本地数据库

  7. 7

    将JSON数据存储到android中的本地数据库

  8. 8

    防止用户操纵将存储在Android本地数据库中的时间?

  9. 9

    在文件/文件夹中本地存储数据库

  10. 10

    AS3。在本地 SQL 数据库中存储数组

  11. 11

    使用python将列表中的值从数据帧存储到数据库中

  12. 12

    根据单选按钮值将值存储在sqlite数据库的多个表中

  13. 13

    我的代码没有将数据值存储到Sql数据库中

  14. 14

    JSON对象数组,用于将表单数据存储在本地临时存储中(PhoneGap项目)

  15. 15

    如何将ICollection值存储到MVC5中的数据库中?

  16. 16

    将数据库中的多个值存储到一个变量中

  17. 17

    如何将ICollection值存储到MVC5中的数据库中?

  18. 18

    如何将表单中的值存储到mySQL数据库中?

  19. 19

    将配置存储在Laravel中的数据库中

  20. 20

    将值存储在数据库中或对其进行硬编码

  21. 21

    使用PHP表单将值存储到数据库中

  22. 22

    我正在尝试将复杂的复选框形式的值存储在mysql数据库中

  23. 23

    最好的方法,将已更改和未更改的值存储到MySql数据库中

  24. 24

    如何将HashMap存储在值为Arrays的数据库中?

  25. 25

    将动态编辑文本值存储在数据库中

  26. 26

    Symfony 3:Doctrine将NULL值存储在数据库中

  27. 27

    如何将编码值存储到数据库中

  28. 28

    将csv的值存储在表数据库的不同列中

  29. 29

    如何将 jQuery 范围滑块值转换为表单以存储在 Django 的数据库中

热门标签

归档