PHP之cookies小练习

//5-1.php
1 <?
error_reporting(E_ALL ^ E_NOTICE);
if ($_COOKIE['username']!="") {
echo "欢迎!"."<br/>";
echo "用户名:".$_COOKIE['username']."<br/>";
echo "电话:".$_COOKIE['phone']."<br/>";
} else{
echo '
<html>
<head>
<title>用户注册</title>
</head>
<body>
<form method="post" action="5-2.php">
<p><font size="18">用户注册</p>
<table border="1" > <tr><td>用户名:</td>
<td><input name="xm" type="text" size="12"></td>
<td><font color="red">*6-12个字符(数字字母下划线)</font></td>
</tr> <tr><td>密码:</td>
<td><input name="pwd1" type="password" size="16"></td>
<td><font color="red">*6-16个数字</font></td>
</tr> <tr><td>确认密码:</td>
<td><input name="pwd2" type="password" size="16"></td>
<td><font color="red">*必须和密码一致</font></td>
</tr> <tr><td>电话:</td>
<td><input name="phone" type="text" size="11"></td>
<td><font color="red">*11位数字,第一位为1</font></td>
</tr> <tr><td colspan="3"><input type="submit" value="注册">
<input type="reset" value="取消">
</td>
</tr> </table>
</form>
</body>
</html>';}
?>
//5-2.php
1 <?
if( strlen($_POST["xm"])<6 || strlen($_POST["xm"])>12 ){
echo "<script>alert('用户名长度错误');location.href='5-1.php';</script>";
}
else if ( strpos($_POST["xm"], "_")==false) {
echo "<script>alert('用户名中应存在下划线');location.href='5-1.php';</script>";
}
else if ( preg_match('/[a-zA-Z]/', $_POST["xm"])==false) {
echo "<script>alert('用户名中应存在英文字母');location.href='5-1.php';</script>";
}
else if ( preg_match('/[0-9]/', $_POST["xm"])==false) {
echo "<script>alert('用户名中应存在数字');location.href='5-1.php';</script>";
}
else if ( strlen($_POST["pwd1"])<6 || strlen($_POST["pwd1"])>16 ) {
echo "<script>alert('密码长度错误');location.href='5-1.php';</script>";
}
else if ($_POST["pwd1"]!=$_POST["pwd2"]) {
echo "<script>alert('两次密码不一致');location.href='5-1.php';</script>";
}
else if (strlen($_POST["phone"])!=11) {
echo "<script>alert('电话长度错误');location.href='5-1.php';</script>";
}
else if (substr($_POST["phone"],0,1)!="1") {
echo "<script>alert('电话第一位应该为1');location.href='5-1.php';</script>";
}
else if ( strpos($_POST["phone"], "_")) {
echo "<script>alert('电话中不应该存在下划线');location.href='5-1.php';</script>";
}
else if ( preg_match('/[a-zA-Z]/', $_POST["phone"])==true) {
echo "<script>alert('电话中不应该存在英文字母');location.href='5-1.php';</script>";
}
else{
setcookie("username",$_POST["xm"],time()+600);
setcookie("password",$_POST["pwd1"],time()+600);
setcookie("phone",$_POST["phone"],time()+600);
echo "注册成功"."<br/>";
echo "用户名:".$_POST["xm"]."<br/>";
echo "电话:".$_POST["phone"]."<br/>";
}
?>
PHP之cookies小练习的更多相关文章
- py
import httplib,urllib import re import random def Login(userid,password): params=urllib.urlencode({' ...
- Cookie的基本使用
1, 如何创建cookie <?php //创建cookie信息 //这个函数用于保存cookie //第一个参数,表示cookie一个key,第二个表示val,第三个表示cookie值,在客户 ...
- IndexedDB:浏览器里内置的数据库(转)
出处;http://www.webhek.com/indexeddb/ IndexedDB是HTML5规范里新出现的浏览器里内置的数据库.对于在浏览器里存储数据,你可以使用cookies或local ...
- 英语发音规则---字母组合oo的发音规律
英语发音规则---字母组合oo的发音规律 一.总结 一句话总结:在英语单词中,字母组合oo多数读长音/u:/,少数读短音/ʊ/.另外,还有极少数的特殊情况读/ʌ/, 在英语单词中,字母组合oo多数读长 ...
- HTML5本地存储——Web SQL Database与indexedDB
虽然在HTML5 WebStorage介绍了html5本地存储的Local Storage和Session Storage,这两个是以键值对存储的解决方案,存储少量数据结构很有用,但是对于大量结构化数 ...
- 关于web浏览器的Web SQL和IndexedDB
虽然在HTML5 WebStorage介绍了html5本地存储的Local Storage和Session Storage,这两个是以键值对存储的解决方案,存储少量数据结构很有用,但是对于大量结构化数 ...
- Web SQL与indexedDB
虽然在HTML5 WebStorage介绍了html5本地存储的Local Storage和Session Storage,这两个是以键值对存储的解决方案,存储少量数据结构很有用,但是对于大量结构化数 ...
- JS操作Cookies的小例子
这篇文章介绍了JS操作Cookies的小例子,有需要的朋友可以参考一下. 您可能感兴趣的文章:js 保存与获取cookie的代码javascript cookie操作实例详解javascript co ...
- 小文本——Cookies
http协议的无状态性导致在需要会话的场景下寸步难行,例如一个网站为了方便用户,在一段时间内登录过改网站的浏览器客户端实现自动登录,为实现这种客户端与服务器之间的会话机制需要额外的一些标识,http头 ...
随机推荐
- Android中的Message机制
对于Android的Message机制主要涉及到三个主要的类,分别是Handler.Message.Looper:首先对每个类做一个简单介绍:然后再介绍所谓的Android的Message机制是如何实 ...
- 关于Service中bindService注意的几个问题
最近有用到Activity需要不断的从Service中获取数据,第一个想法肯定就是通过bind回调机制了,有几点概念模糊特此记录下: 单独使用bindService(),unbindService() ...
- 安卓笔记--- intent传递自定义类
<span style="font-family: Arial, Helvetica, sans-serif;">eat.setOnClickListener(new ...
- Objective-C的面向对象特性(二)
在Objective-C语言中, 类别.类扩展(也称为匿名类别)以及协议是Objective-C 语言级别支持的模式,用来实现对类进行功能扩展. 一.类别--用来增加方法到已存在类 声明一个类别的语法 ...
- LeetCode之旅(22)-House Robber
题目: You are a professional robber planning to rob houses along a street. Each house has a certain am ...
- ASP.NET Core 2.0 使用NLog实现日志记录
1.安装NuGet包 1.Install-Package NLog.Web.AspNetCore 2.Install-Package NLog 在csproj中编辑: <PackageRefer ...
- 爬虫Scrapy框架运用----房天下二手房数据采集
在许多电商和互联网金融的公司为了更好地服务用户,他们需要爬虫工程师对用户的行为数据进行搜集.分析和整合,为人们的行为选择提供更多的参考依据,去服务于人们的行为方式,甚至影响人们的生活方式.我们的scr ...
- CSS3实现多种背景效果
灵活的背景定位 实现效果: 将背景图定位到距离容器底边 10px 且距离右边 20px 的位置. background-position 方案 实现代码: <div>海盗密码</di ...
- Python-Flask框架之——图书管理系统 , 附详解源码和效果图 !
该图书管理系统要实现的功能: 1. 可以通过添加窗口添加书籍或作者, 如果要添加的作者和书籍已存在于书架上, 则给出相应的提示. 2. 如果要添加的作者存在, 而要添加的书籍书架上没有, 则将该书籍添 ...
- Mybatis 系列2
上篇文章 写了一个Demo简单体现了一下Mybatis的流程.本次,将简单介绍一下Mybatis的配置文件: 上次例子中,我们以 SqlSessionFactoryBuilder 去创建 SqlSes ...