PHP字符串操作实战用户注册检测界面
一.重点
用字符串的内置函数对输入的字符串进行处理
substr() 取字符串
ord()转为ascii码
str()把ascii码转为字符串
strcmp()比较两个字符串,转为ascii码比较
strcasecmp()忽略大小写比较
strpos($string,字符)字符串中查找,返回第一次出现的值,没有返回false
stripos()忽略大小写
strrpos()最后出现的位置
strip_tags()过滤字符串的html和php标记
strip_tags($str,'')留下标签
strtolower()转为小写
trim()过滤两端空格
ltrim()过滤左空格
rtrim()过滤右空格
empty()是否为空
join(‘,‘,$string)以‘,‘分隔 ,数组转为字符串
md5()加密字符串
sha1()加密字符串
二.练习代码用户登录注册页面
两个页面 register.php doaction.php
register.php 首页代码
'
.$string{mt_rand(0,strlen($string)-1)}.'';
}
//echo $code;
?>
注册练习
个人注册页面
doaction.php 后端验证代码
重新注册';
//检测第一个字符是不是字母
//$char = $username{0};
$char = substr($username,0,1);
$ascli = ord($char);//得到指定字符的ascli码
//检测ascli是否在65~90(A~Z)或者97~122(a~z)之间表示是字母
if (!(($ascli>=65 && $ascli<=90) || ($ascli>=97 && $ascli<=122))) {
exit('用户名首字母不是以字母开头开始
'.$redirectUrl);
}
//检测用户名长度6~10
$userLen = strlen($username);
if ($userLen<6 || $userLen>10) {
exit('用户名长度必须是6~10
'.$redirectUrl);
}
//检测密码不能为空
$passwdLen = strlen($password);
if ($passwdLen == 0) {
die('密码不能为空
'.$redirectUrl);
}
//检测密码长度6~10
if($passwdLen<6 || $passwdLen>10) {
die('密码长度不符合规范
'.$redirectUrl);
}
//检测密码两次是否一致
//if ($password != $password1 ) {
// exit('两次密码不一致
'.$redirectUrl);
//}
if (strcmp($password, $password1) != 0) {
exit('两次密码不一致
'.$redirectUrl);
}
//检测邮箱的合法性
if (strpos($email, '@') == false) { //0==false 0也返回false
exit('非法邮箱
'.$redirectUrl);
}
//检测验证码是否符合规范
if ($verify != $verify1) {
exit('验证码错误
'.$redirectUrl);
}
//使用md5进行加密密码
$password = md5($password);
echo "恭喜您注册成功,用户信息如下:";
$userinfo=<<
用户名
密码
邮箱
兴趣爱好
$username
$password
$email
$favStr
EOF;
echo $userinfo;
?>
三.截图
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。