ios开发之网络php
接着前面的学习,几天上午学习了数据库网络值php用户的注册与登录,感觉代码与ios上的oc太相似了,因此学习下来没什么障碍了,下面是代码:
首先是javascript.html文件中:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="Content-Style-Type" content="text/css">
<title>hello</title>
</head>
<body>
<center>欢迎来到登录和注册界面</center>
<hr>
<form action="login.php" method="post">
<table align='center' border='1' width="300">
<tr><td>账号</td><td><input type="text" maxlength="10" name="uname"></td></tr>
<tr><td>密码</td><td><input type="password" maxlength="10" name="upass"></td></tr>
<tr><td><input type="submit" value="登录" name="action"></td><td><input type="submit" value="注册" name="action"></td></tr>
</table>
</form>
</body>
</html>
然后是login.php文件中:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title></title>
</head>
<body>
<?
$uname=$_POST['uname'];
$upass=$_POST['upass'];
//对数据有效性检查
$uname=trim($uname);//剔除用户名两段的空格
$upass=trim($upass);//剔除密码两断的空格
if($uname==""||$upass=="")//判断用户名或密码是否为空
{
//导航回到登录注册界面
echo "<script>location.href='javascript.html';</script>";
}
$action=$_POST['action'];
$conn=mysql_connect("127.0.0.1","root","1234");
if(!$conn)
{
die("登录失败!");
}
$result=mysql_select_db("KL",$conn);
if(!$result)
{
mysql_close($conn);
die("指定数据库失败!");
}
if($action=="登录")
{
//查看用户是否存在
$sql="select * from t_user where uname='".$uname."' and upass='".$upass."'";
$rs=mysql_query($sql);
if(!$rs)
{
mysql_close($conn);
die("查询数据失败!");
}
$recordCount=mysql_num_rows($rs);
if($recordCount>0)
{
die("登录成功!");
}
else
{
mysql_close($conn);
die("对不起,登录失败,请检查你的用户名和密码,重新<a href='javascript.html'>登录</a>");
}
}
else if($action=="注册")
{
//查看用户是否存在
$sql="select * from t_user where uname='".$uname."'";
$rs=mysql_query($sql);
if(!$rs)
{
mysql_close($conn);
die("查询数据失败!");
}
$recordCount=mysql_num_rows($rs);
if($recordCount>0)
{
mysql_close($conn);
die("对不起,你所注册的用户已存在,请更换您的用户名!想返回重新<a href='javascript.html'>注册</a>吗?");
}
else
{
//插入用户信息
$sql="insert into t_user(uname,upass) values('".$uname."','".$upass."')";
$rs=mysql_query($sql);
if(!$rs)//如果用户不存在,则把用户信息写入表中
{
mysql_close($conn);
die("注册用户失败,请稍候再试!");
}
else
{
echo "恭喜你!注册成功,你可以用它去<a href='javascript.html'>登录</a>了!";
}
}
//如果存在,就显示提示信息,如果不存在,就将用户信息写到当前数据库中
}
else
{
echo "error!";
}
mysql_close($conn);
?>
</body>
</html>
ios开发之网络php的更多相关文章
- iOS开发之网络编程--5、NSURLSessionUploadTask+NSURLSessionDataDelegate代理上传
前言:关于NSURLSession的主要内容快到尾声了,这里就讲讲文件上传.关于文件上传当然就要使用NSURLSessionUploadTask,这里直接讲解常用的会和代理NSURLSessionDa ...
- iOS开发之网络编程--4、NSURLSessionDataTask实现文件下载(离线断点续传下载) <进度值显示优化>
前言:根据前篇<iOS开发之网络编程--2.NSURLSessionDownloadTask文件下载>或者<iOS开发之网络编程--3.NSURLSessionDataTask实现文 ...
- iOS开发之网络编程--3、NSURLSessionDataTask实现文件下载(离线断点续传下载)
前言:使用NSURLSessionDownloadTask满足不这个需要离线断点续传的下载需求,所以这里就需要使用NSURLSessionDataTask的代理方法来处理下载大文件,并且实现离线断点续 ...
- iOS开发之网络编程--2、NSURLSessionDownloadTask文件下载
本文内容大纲: 1.回顾NSURLSessionTask 2.NSURLSessionDownloadTask大文件之block下载 3.NSURLSessionDownloadTask大文件之代理方 ...
- iOS开发之网络编程--使用NSURLConnection实现文件上传
前言:使用NSURLConnection实现文件上传有点繁琐. 本文并没有介绍使用第三方框架上传文件. 正文: 这里先提供用于编码测试的接口:http://120.25.226.186:3281 ...
- iOS开发之网络编程--使用NSURLConnection实现大文件断点续传下载+使用输出流代替文件句柄
前言:本篇讲解,在前篇iOS开发之网络编程--使用NSURLConnection实现大文件断点续传下载的基础上,使用输出流代替文件句柄实现大文件断点续传. 在实际开发中,输入输出流用的比较少,但 ...
- iOS开发之网络编程--使用NSURLConnection实现大文件下载
主要思路(实现下载数据分段写入缓存中) 1.使用NSURLConnectionDataDelegate以及代理方法.2.在成功获取响应的代理方法中,获得沙盒全路径,并在该路径下创建空文件和文件句柄.3 ...
- iOS开发之网络编程--小文件下载
文件下载方式: 如果下载的文件比较小,下载方式: 直接用NSData的 +(id)dataWithContentsOfURL:(NSURL*)url; 利用NSURLConnection发送一个HTT ...
- IOS开发之网络开发工具
IOS开发之网络开发工具 做移动端开发 常常会涉及到几个模块:1.网络检測 2.网络请求get和post请求 3.文件上传 4.文件下载 5.断点续传 如今将这些一一分享给大家 ,也欢迎 ...
- iOS开发系列--网络开发
概览 大部分应用程序都或多或少会牵扯到网络开发,例如说新浪微博.微信等,这些应用本身可能采用iOS开发,但是所有的数据支撑都是基于后台网络服务器的.如今,网络编程越来越普遍,孤立的应用通常是没有生命力 ...
随机推荐
- RabbitMQ之入门
生成者: #coding:utf-8 import sys import pika credentials=pika.PlainCredentials("guest"," ...
- vs2012配置OpenGL
1.下载glut包: http://www.opengl.org/resources/libraries/glut/glutdlls37beta.zip 2.将下载的压缩包解压,得到5个文件,如下: ...
- linux发行版基础目录
linux发行版基础目录 linux 基础目录 linux基础目录 目录 作用 / 根目录,起源 /boot linux引导启动目录 /lib 库目录 /bin 常用内部命令 /sbin 常用内部管理 ...
- Html锚点定位偏差计算解决插件
/*=============== 以下为HTML中的锚点代码 =====================*/ <div id="fixedNavBar" class=&qu ...
- 关于ViewPager、ViewFilpper、ViewFlow三种实现水平向滑动方式的比较
ViewPagerViewPager类提供了多界面切换的新效果.新效果有如下特征:[1] 当前显示一组界面中的其中一个界面.[2] 当用户通过左右滑动界面时,当前的屏幕显示当前界面和下一个界面的一部分 ...
- boost.asio与boost.log同时使用导致socket不能正常收发数据
现象: 1. 没有使用boost.log前能正常收发数据 2.加入boost.log后async_connect没有回调 fix过程: 1. gdb调试发现程序block在pthread_timed_ ...
- for循环每次展示固定条数的数据的写法。
第一种是一组json数据实现分页的效果,也就是每一次展示5条数据.第二种场景是每一秒展示4条数据,直到全部显示完.两种思路都做个笔记记录下. var nums = 5; //每页出现的数量 var p ...
- Java split()用法
特殊情况有 * ^ : | . \ 一.单个符号作为分隔符 String address="上海\上海市|闵行区\吴中路"; String[] splitAddress=addr ...
- F:ungeon Master
总时间限制: 1000ms 内存限制: 65536kB描述You are trapped in a 3D dungeon and need to find the quickest way out! ...
- SQL Server中Text和varchar(max)数据类型区别
SQL Server中Text和varchar(max)数据类型区别 以前只知道text和image是可能被SQL Server淘汰的数据类型,但具体原因不太清楚,今天读书的时候发现了text与v ...