Ionic Cordova Sqlite 实现保存用户名登陆
1.添加sqlite 组件
cordova plugin add https://github.com/litehelpers/Cordova-sqlite-storage.git --save
2.编写代码 app.js =>run=> $ionicPlatform.ready 添加
if(window.cordova ) {
ltdb = $cordovaSQLite.openDB({name: "ltapp.db", location: 1});
//创建用户表
$cordovaSQLite.execute(ltdb, "CREATE TABLE IF NOT EXISTS users (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, email TEXT, phonenumber INTEGER, password TEXT)");
$cordovaSQLite.execute(ltdb, 'SELECT COUNT(*) FROM users ').then(function (res) {
if (res.rows.length < 0) {
var query = "INSERT INTO users (name,email,phonenumber,password) VALUES ( ?, ?, ?, ?)";
$cordovaSQLite.execute(ltdb, query, ['admin', 'sulin11026@163.com', '13683365354', '123']).then(function (result) {
console.log("success");
}, function (error) {
})
}
},
function (error) {
console.log(error);
}
);
}
controllers .js
controller('LoginCtrl',['$scope', '$state', '$ionicPopup', 'AuthService', function($scope, $state, $ionicPopup, AuthService) {
$scope.login = function() {
var user= $scope.user;
AuthService.login(user.uname, user.pwd).then(function(authenticated) {
$state.go('tabs.home', {}, {reload: true});
$scope.setCurrentUsername(user.username);
}, function(err) {
var alertPopup = $ionicPopup.alert({
title: '登录失败',
template: '请输入正确的账号密码!'
});
});
};
}])
servcies.js
.factory('AuthService',['$q', '$http','$cordovaSQLite', function($q, $http,$cordovaSQLite) {var username = '';var login = function(name, pw) {
return $q(function(resolve, reject) {
try {
$cordovaSQLite.execute(ltdb, "SELECT * FROM users WHERE name = ? ",[name]).then(
function(res) {
if (res.rows.length > 0) {
if(pw.toLocaleUpperCase()==res.rows.item(0).password.toLocaleUpperCase()){
resolve('Login success.');
}
}else{
reject('Login Failed.');
}
},
function(error) {
reject('Login Failed.');
}
);
}
catch(ex){
}
});
};return {
login: login
};
}])
index.html
<ion-view class="login" hide-nav-bar="true" style="z-index: 1" cache-view="false">
<form ng-submit="login()" name="theform">
<div id="login">
<div class="logo"><img src="img/fixed/logo.png"></div>
<div class="fill">
<label class="item item-input ion-ios-person-outline">
<input type="text" placeholder="账号" ng-model="user.uname"
ng-focus="hide='1'" ng-blur="hide='1'" ng-required="true" >
</label>
<label class="item item-input ion-ios-locked-outline">
<input type="password" placeholder="密码" ng-model="user.pwd" ng-required="true"
ng-focus="hide='1'" ng-blur="hide='1'" >
</label>
<label class="btn">
<button class="button button-block button-light" type="submit">登录</button>
</label>
</div>
以上测试正常通过,如果有问题需要耐心慢慢调试
Ionic Cordova Sqlite 实现保存用户名登陆的更多相关文章
- 搭建 AngularJS+Ionic+Cordova 开发环境并运行一个demo
目前的手机APP有三类:原生APP,WebAPP,HybridApp:HybridApp结合了前两类APP各自的优点,越来越流行. Cordova就是一个中间件,让我们把WebAPP打包成Hybrid ...
- ionic 使用sqlite
昨天被ionic和sqlite折腾一天,怎么也无法实现读取,后来才发现,原来是codova中的sqliteplugin版本问题. 问题:Database location or iosDatabase ...
- 基于ionic+cordova+angularJs从零开始搭建自己的移动端H5 APP
这里详细介绍下如何用ionic+cordova+angularjs搭建自己的移动端app,包括环境搭建,框架使用等,具体项目已放置在github上,可下载下来自行启动. 下载地址:https://gi ...
- ionic+cordova+angularJs
ionic+cordova+angularJs 这里详细介绍下如何用ionic+cordova+angularjs搭建自己的移动端app,包括环境搭建,框架使用等,具体项目已放置在github上,可下 ...
- cookie保存用户名及密码
登陆页中,用户输入用户名密码,点击提交,后台对照mysq数据库中,看是否有对应的用户名,以及密码是否正确.如果正确 则将用户名密码分两份Cookie保存.页面跳转到登陆成功页. 用户再次访问登陆页时, ...
- 用户登录保存数据实例(慕课笔记 使用SharedPreferences保存用户名)
学习视频之后自己操作时的笔记. 0.视频地址:http://www.imooc.com/video/3265 1.功能预览: 说明:1)输入错误用户名和密码,点击登录,弹出提示框“禁止登录”: 2)输 ...
- NSUserDefaults保存用户名和密码
#import "ViewController.h" @interface ViewController () @property (weak, nonatomic) IBOutl ...
- Ionic Cordova 调用原生 Api 实现拍照上传 图片到服务器功能
Ionic 调用 Device 设备 Api 获取手机的设备信息 1. 找到对应的Api: https://ionicframework.com/docs/native/device/ 2. 安装相关 ...
- Ionic + Cordova 跨平台移动开发环境配置
1.下载安装JDK(根据各自系统选择32位或64位下载),安装完成之后需要做以下环境变量配置 在“系统变量”中,设置3象属性,JAVA_HOME,PATH,CLASSPATH(大小写无所谓),如果已经 ...
随机推荐
- sql语句之条件,分页,排序
sql语句之条件,分页,排序
- 配置文件一mapper.xml
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-/ ...
- 重装系统后配置原有的mysql
1.重装系统后配置原有的mysql 2.修改 my.ini [修改 basedir:MySQL当前所在路径 datadir 数据存放路径] [mysqld] # 设置3306端口 port= # 设 ...
- ros-slam的链接
http://wiki.ros.org/navigation/Tutorials/RobotSetup 稍后整理
- echart数据的实时更新
- Java-Maven-pom.xml-porject-parent:parent
ylbtech-Java-Maven-pom.xml-porject-parent:parent 1.返回顶部 1.Inherit defaults from Spring Boot <!-- ...
- day 55 Django基础五之django模型层(一)单表操作
Django基础五之django模型层(一)单表操作 本节目录 一 ORM简介 二 单表操作 三 章节作业 四 xxx 一 ORM简介 MVC或者MVC框架中包括一个重要的部分,就是ORM,它 ...
- 网络安全系列 之 SQL注入学习总结
目录 1. sql注入概述 2. sql注入测试工具 3. sql注入防御方法 3.1 问题来源 3.2 防御方法 4. SQL注入防御举例 4.1 使用JDBC时,SQL语句进行了拼接 4.2 使用 ...
- <day004>小娜显示空白+CSV文件的基本操作+普通的代理使用
小知识: 当小娜搜索显示空白的时候,怎么解决? 任务管理器结束小娜进程就好了= =*(多半是惯得,关掉就好了!) 任务1:CSV文件的基本操作 import csv import pandas as ...
- CSRF spring mvc 跨站请求伪造防御(转)
CSRF CSRF(Cross-site request forgery跨站请求伪造,也被称为“One Click Attack”或者Session Riding,通常缩写为CSRF或者XSRF,是一 ...