PHP字符串操作實戰(zhàn)用戶注冊檢測界面
一.重點
用字符串的內(nèi)置函數(shù)對輸入的字符串進(jìn)行處理
substr() 取字符串
ord()轉(zhuǎn)為ascii碼
str()把ascii碼轉(zhuǎn)為字符串
strcmp()比較兩個字符串,轉(zhuǎn)為ascii碼比較
strcasecmp()忽略大小寫比較
strpos($string,字符)字符串中查找,返回第一次出現(xiàn)的值,沒有返回false
stripos()忽略大小寫
strrpos()最后出現(xiàn)的位置
strip_tags()過濾字符串的html和php標(biāo)記
strip_tags($str,'')留下標(biāo)簽
strtolower()轉(zhuǎn)為小寫
trim()過濾兩端空格
ltrim()過濾左空格
rtrim()過濾右空格
empty()是否為空
join(‘,‘,$string)以‘,‘分隔 ,數(shù)組轉(zhuǎn)為字符串
md5()加密字符串
sha1()加密字符串
二.練習(xí)代碼用戶登錄注冊頁面
兩個頁面 register.php doaction.php
register.php 首頁代碼
'
.$string{mt_rand(0,strlen($string)-1)}.'';
}
//echo $code;
?>
注冊練習(xí)
個人注冊頁面
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('密碼長度不符合規(guī)范
'.$redirectUrl);
}
//檢測密碼兩次是否一致
//if ($password != $password1 ) {
// exit('兩次密碼不一致
'.$redirectUrl);
//}
if (strcmp($password, $password1) != 0) {
exit('兩次密碼不一致
'.$redirectUrl);
}
//檢測郵箱的合法性
if (strpos($email, '@') == false) { //0==false 0也返回false
exit('非法郵箱
'.$redirectUrl);
}
//檢測驗證碼是否符合規(guī)范
if ($verify != $verify1) {
exit('驗證碼錯誤
'.$redirectUrl);
}
//使用md5進(jìn)行加密密碼
$password = md5($password);
echo "恭喜您注冊成功,用戶信息如下:";
$userinfo=<<
用戶名
密碼
郵箱
興趣愛好
$username
$password
$email
$favStr
EOF;
echo $userinfo;
?>
三.截圖
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。