iOS+PHP注册登录系统 iOS部分(下)

接着上篇《iOS+PHP注册登录系统 PHP部分(上)》进行学习

3.iOS部分

上一次我们写完了数据库部分和PHP部分这次我们来完成iOS部分。
首先先在storyboard中一阵狂拖,弄成如下图。
可以先在text Field中输入用户名和密码 方便以后调试。

3.1登录部分代码

创建一个新的UIViewController 名为registViewController(用于注册用户,ViewController用于登录)。
在ViewController.h中importregistViewController
#import "registViewController.h" 

然后设置登录界面中的控件 用来写用户名的控件名设置为txtUser,密码的控件名设置为txtPwd,确定按钮的方法名称为
LoginClick,注册按钮的方法名为registButton。
然后开始写ViewController.m中的代码

//

// ViewController.m

// iosLogin

//

// Created by 曹晗 on 16/2/25.

// Copyright :emoji: 2016年 CaoHan. All rights reserved.

//

  

#import "ViewController.h"

  

@interface ViewController ()

@property (weak, nonatomic) IBOutlet UITextField *txtUser;

@property (weak, nonatomic) IBOutlet UITextField *txtPwd;

  

@end

  

@implementation ViewController

  

- (void)viewDidLoad {

  [super viewDidLoad];

  // Do any additional setup after loading the view, typically from a nib.

}

  

- (void)didReceiveMemoryWarning {

  [super didReceiveMemoryWarning];

  // Dispose of any resources that can be recreated.

}

- (IBAction)LoginClick:(id)sender {

  //前后去空格

  NSString *userName = [_txtUser.text stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];

  NSString *userPwd = [_txtPwd.text stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];

    

  NSDictionary *jsonDic = [self getJsonData:userName userpwd:userPwd];

  NSString* loginFlag = [jsonDic objectForKey:@"loginFlag"];

  NSLog(@"%@",loginFlag);

    

  [self aletrInfo:loginFlag];

}

- (IBAction)registButton:(id)sender {

  UIStoryboard *storboard = self.storyboard;

  registViewController *vc2 = [storboard instantiateViewControllerWithIdentifier:@"vc2"];

  [self presentViewController:vc2 animated:YES completion:nil];

}

//用于请求PHP 获得JSON

- (NSDictionary *)getJsonData:(NSString *)user_name userpwd:(NSString *)user_pwd {

  NSError *error;

  NSString *urlString = [NSString stringWithFormat:@"http://192.168.1.106/iosLogin/index.php?action=login&user_name=%@&user_pwd=%@",user_name,user_pwd];

  //加载一个NSURL对象

  NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:urlString]];

  //将请求的url数据放到NSData对象中

  NSData *response = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];

  //IOS5自带解析类NSJSONSerialization从response中解析出数据放到字典中

  NSDictionary *jsonDic = [NSJSONSerialization JSONObjectWithData:response options:NSJSONReadingMutableLeaves error:&error];

  NSLog(@"接收到的数据为%@",jsonDic);

  returnjsonDic;

}

//弹出信息

- (void)aletrInfo:(NSString *)loginFlag{

  UIAlertView *alert = [[UIAlertView alloc]init];

  [alert setTitle:@"提示"]; [alert setDelegate:nil];

  [alert addButtonWithTitle:@"确定"];

    

  if([loginFlag isEqual: @"0"]) {

    [alert setMessage:@"账号或密码错误"];

  }

  if([loginFlag isEqual:@"1"]) {

    [alert setMessage:@"登陆成功"];

  }

  [alert show];

}

  

@end

在注册按钮能够跳转界面前,要先将stroyboard中的注册界面的stroyboard ID设置为vc2才可以进行跳转。

复制代码代码如下:

NSString *urlString = [NSString stringWithFormat:@"http://192.168.1.106/iosLogin/index.php?action=login&user_name=%@&user_pwd=%@",user_name,user_pwd]; 

 

其中这里的192.168.1.106可以写localhost也可以写自己的ip地址。
写到这里就可以先进行调试一下登录了。后面的注册用户代码也和这里差不多。

3.2注册界面代码
先在registViewCongroller.h中import ViewController.h
#import "ViewController.h" 
然后是registViewController.m中的代码。

//

// registViewController.m

// iosLogin

//

// Created by 曹晗 on 16/2/27.

// Copyright 2016年 CaoHan. All rights reserved.

//

  

#import "registViewController.h"

  

@interface registViewController ()

@property (weak, nonatomic) IBOutlet UITextField *txtUser;

@property (weak, nonatomic) IBOutlet UITextField *txtPwd;

  

@end

  

@implementation registViewController

  

- (void)viewDidLoad {

  [super viewDidLoad];

  // Do any additional setup after loading the view.

}

  

- (void)didReceiveMemoryWarning {

  [super didReceiveMemoryWarning];

  // Dispose of any resources that can be recreated.

}

//这个是注册按钮

- (IBAction)registButton:(id)sender {

  NSString *userName = [_txtUser.text stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];

  NSString *userPwd = [_txtPwd.text stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];

    

  NSDictionary *jsonDic = [self getJsonData:userName userpwd:userPwd];

  NSString* registFlag = [jsonDic objectForKey:@"registFlag"];

  NSLog(@"%@",registFlag);

    

  [self aletrInfo:registFlag];

    

}

//这个是返回按钮

- (IBAction)returnButton:(id)sender {

  [self dismissModalViewControllerAnimated:YES];

}

  

- (NSDictionary *)getJsonData:(NSString *)user_name userpwd:(NSString *)user_pwd {

  NSError *error;

  NSString *urlString = [NSString stringWithFormat:@"http://192.168.1.106/iosLogin/index.php?action=regist&user_name=%@&user_pwd=%@",user_name,user_pwd];

  //加载一个NSURL对象

  NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:urlString]];

  //将请求的url数据放到NSData对象中

  NSData *response = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];

  //IOS5自带解析类NSJSONSerialization从response中解析出数据放到字典中

  NSDictionary *jsonDic = [NSJSONSerialization JSONObjectWithData:response options:NSJSONReadingMutableLeaves error:&error];

  NSLog(@"接收到的数据为%@",jsonDic);

  returnjsonDic;

}

  

- (void)aletrInfo:(NSString *)registFlag{

  UIAlertView *alert = [[UIAlertView alloc]init];

  [alert setTitle:@"提示"]; [alert setDelegate:nil];

  [alert addButtonWithTitle:@"确定"];

    

  if([registFlag isEqual: @"0"]) {

    [alert setMessage:@"用户名已存在"];

  }

  if([registFlag isEqual:@"1"]) {

    [alert setMessage:@"注册成功"];

  }

  [alert show];

}

  

@end

时间: 2024-09-28 06:48:44

iOS+PHP注册登录系统 iOS部分(下)的相关文章

iOS+PHP注册登录系统 PHP部分(上)

最后达成效果: 分析做项目的基本流程: 1.先创建数据库 2.写PHP服务端 3.写iOS用户端 1.创建数据库 我用的是wamp. 数据库名称为ioslogin,表名为users其中有3个字段user_id,user_name和user_pwd. user_id为自增长. 2.php服务端 php端我用的是EclipsePHP编写. 先创建一个配置文件config.php. <?php $DBHOST="localhost"; $DBUSER="root";

iOS+PHP注册登录系统教程 PHP部分(上)

最后达成效果:        分析做项目的基本流程: 1.先创建数据库 2.写PHP服务端 3.写iOS用户端 1.创建数据库 我用的是wamp. 数据库名称为ioslogin,表名为users其中有3个字段user_id,user_name和user_pwd. user_id为自增长. 2.php服务端 php端我用的是EclipsePHP编写. 先创建一个配置文件config.php. <?php $DBHOST="localhost"; $DBUSER="root

通过Dreamweaver用ASP设计注册登录系统出现未指定的错误,求高手解答

问题描述 通过Dreamweaver用ASP设计注册登录系统出现未指定的错误,求高手解答 本人初学Dreamweaver,小白一枚,用ASP设计注册登录系统,用的是本地/网络连接方式进行测试,在点击登录按钮后显示错误,错误为: Provider 错误 '80004005' 未指定的错误 /denglu.asp,行 9 求高手帮忙解答 解决方案 你把代码贴出来看看啊 解决方案二: 数据库连接有问题,你用的是什么版本的数据库,CONNECTSTRING是怎么写的? 另外检查数据库文件目录的访问权限.

php注册登录系统简化版_php技巧

登录注册系统是日常上网最普通的操作,我设了一个分类一步步完善注册登录系统,若哪里有误,请见谅. 所用语言:php 数据库 :mysql 本次实现功能: 1.用户注册 2.用户登录 主要文件: 完整代码 1 sql 在已有的数据库里创建user表,id,username,password三个字段 复制代码 代码如下: create table user(id int(10) not null auto_increment,username varchar(30),password varchar(

Python制作简易注册登录系统_python

这次我主要讲解如何用Python基于Flask的登录和注册,验证方式采用Basic Auth 主要用以下库 import os #Flask的基础库 from flask import Flask, abort, request, jsonify, g, url_for #Flaks的数据库操作的库 from flask.ext.sqlalchemy import SQLAlchemy #Flask登录注册的库 from flask.ext.httpauth import HTTPBasicAu

iOS 环信登录失败的情况下如何加载历史信息

问题描述 解决方案 登陆失败加载不到信息解决方案二:[[EaseMob sharedInstance].chatManager asyncLoginWithUsername:hxId password:hxPwd completion:^(NSDictionary *loginInfo, EMError *error) { if (!error) { NSLog(@"IM 登录成功-------------"); // 设置自动登录 [[EaseMob sharedInstance].

Struts 2.0整合Hibernate 3.2开发注册登录系统

开发工具:MyEclipse 6.0 ,Tomcat 5.5 ,JDK 1.5 ,MySQL 5.0 :开发准备:下载Struts 2.0和 Hibernate 3.2,大家可Struts和Hibernate的官方网站下载这两个框架.我们先来总览一下开发完成后的 包-类图: 首先NEW一个Web Project ,名为"LoginSystem" ,在lib 目录下加入Struts 2.0的Jar包和Hibernate 3.2的Jar包,然后按下面的步骤来: 1.在 src 目录下建 &

iOS微信第三方登录实现_IOS

一.接入微信第三方登录准备工作.移动应用微信登录是基于OAuth2.0协议标准构建的微信OAuth2.0授权登录系统. 在进行微信OAuth2.0授权登录接入之前,在微信开放平台注册开发者帐号,并拥有一个已审核通过的移动应用,并获得相应的AppID和AppSecret,申请微信登录且通过审核后,可开始接入流程.(注意) 1.下载iOS微信SDK. 下载地址 2.将SDK放到工程目录中. 3.补充导入一些依赖框架. 4.添加URL Types 5.添加iOS9 URL Schemes. 注意:如果

iOS微信第三方登录实例_IOS

本文实例为大家分享了iOS微信第三方登录,供大家参考,具体内容如下 一.准备工作 1.到微信开放平台注册成开发者,获取appid 2.导入WeChatConnection.framework 3.配置URL Schemes  输入appid  例如wx29ce0f21ea982cb8 二.配置AppDelegate.m 1. 注册微信 //微信登陆 [WXApi registerApp:WeiXin_AppId withDescription:@"weixin"]; 2.设置函数 //