接着前面的学习,几天上午学习了数据库网络值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的更多相关文章

  1. iOS开发之网络编程--5、NSURLSessionUploadTask+NSURLSessionDataDelegate代理上传

    前言:关于NSURLSession的主要内容快到尾声了,这里就讲讲文件上传.关于文件上传当然就要使用NSURLSessionUploadTask,这里直接讲解常用的会和代理NSURLSessionDa ...

  2. iOS开发之网络编程--4、NSURLSessionDataTask实现文件下载(离线断点续传下载) <进度值显示优化>

    前言:根据前篇<iOS开发之网络编程--2.NSURLSessionDownloadTask文件下载>或者<iOS开发之网络编程--3.NSURLSessionDataTask实现文 ...

  3. iOS开发之网络编程--3、NSURLSessionDataTask实现文件下载(离线断点续传下载)

    前言:使用NSURLSessionDownloadTask满足不这个需要离线断点续传的下载需求,所以这里就需要使用NSURLSessionDataTask的代理方法来处理下载大文件,并且实现离线断点续 ...

  4. iOS开发之网络编程--2、NSURLSessionDownloadTask文件下载

    本文内容大纲: 1.回顾NSURLSessionTask 2.NSURLSessionDownloadTask大文件之block下载 3.NSURLSessionDownloadTask大文件之代理方 ...

  5. iOS开发之网络编程--使用NSURLConnection实现文件上传

    前言:使用NSURLConnection实现文件上传有点繁琐.    本文并没有介绍使用第三方框架上传文件. 正文: 这里先提供用于编码测试的接口:http://120.25.226.186:3281 ...

  6. iOS开发之网络编程--使用NSURLConnection实现大文件断点续传下载+使用输出流代替文件句柄

    前言:本篇讲解,在前篇iOS开发之网络编程--使用NSURLConnection实现大文件断点续传下载的基础上,使用输出流代替文件句柄实现大文件断点续传.    在实际开发中,输入输出流用的比较少,但 ...

  7. iOS开发之网络编程--使用NSURLConnection实现大文件下载

    主要思路(实现下载数据分段写入缓存中) 1.使用NSURLConnectionDataDelegate以及代理方法.2.在成功获取响应的代理方法中,获得沙盒全路径,并在该路径下创建空文件和文件句柄.3 ...

  8. iOS开发之网络编程--小文件下载

    文件下载方式: 如果下载的文件比较小,下载方式: 直接用NSData的 +(id)dataWithContentsOfURL:(NSURL*)url; 利用NSURLConnection发送一个HTT ...

  9. IOS开发之网络开发工具

    IOS开发之网络开发工具 做移动端开发  常常会涉及到几个模块:1.网络检測   2.网络请求get和post请求  3.文件上传  4.文件下载   5.断点续传 如今将这些一一分享给大家 ,也欢迎 ...

  10. iOS开发系列--网络开发

    概览 大部分应用程序都或多或少会牵扯到网络开发,例如说新浪微博.微信等,这些应用本身可能采用iOS开发,但是所有的数据支撑都是基于后台网络服务器的.如今,网络编程越来越普遍,孤立的应用通常是没有生命力 ...

随机推荐

  1. What is SSL and what are Certificates?

    Refer to http://www.tldp.org/HOWTO/SSL-Certificates-HOWTO/x64.html The content 1.2. What is SSL and ...

  2. offsetwidth/clientwidth的区别

    clientWidth是对象看到的宽度(不含边线,即border)scrollWidth是对象实际内容的宽度(若无padding,那就是边框之间距离,如有padding,就是左padding和右pad ...

  3. iBATIS代码生成分析

    1.分析目录结构"tools"(或者说模板) 2.首先分析ibatorConfig.xml文件 <?xml version="1.0" encoding= ...

  4. Java_I/O输入输出_实现当用户输入姓名和密码时,将每一个姓名和密码加在文件中,如果用户输入done,就结束程序。

    import java.io.*; public class Example { static final int lineLength = 81; public static void main(S ...

  5. 微信webview

    会露出灰色的地步 https://segmentfault.com/q/1010000004295291 有说用iscroll5来解决,但是明显有bug啊 https://segmentfault.c ...

  6. angularJS问题集结

    1.用ng-repeat循环输出遇到很奇怪的问题 : Error: [ngRepeat:dupes] http://errors.angularjs.org/1.4.6/ngRepeat/dupes? ...

  7. 关于ViewPager、ViewFilpper、ViewFlow三种实现水平向滑动方式的比较

    ViewPagerViewPager类提供了多界面切换的新效果.新效果有如下特征:[1] 当前显示一组界面中的其中一个界面.[2] 当用户通过左右滑动界面时,当前的屏幕显示当前界面和下一个界面的一部分 ...

  8. MVC5+EF6 入门完整教程四

    上篇文章主要讲了如何配置EF, 我们回顾下主要过程: 创建Data Model à 创建Database Context à创建databaseInitializerà配置entityFramewor ...

  9. DEV控件中GridView中的复选框与CheckBox实现联动的全选功能

    最初的界面图如图1-1(全选框ID: cb_checkall  DEV控件名称:gcCon ): 要实现的功能如下图(1-2  1-3  1-4)及代码所示: 图1-2 图1-3 图1-4 O(∩_∩ ...

  10. 线性控制原理——PID算法应用

    使用控制系统(PID)控制被控对象 PID控制的三要素:控制器,被控对象,反馈器.控制器就是一个数学模型,就PID来说,等同于PID算法.是对反馈量的一个处理与输出.通俗的说就是对于每个被控的量,我的 ...