表單正則驗證主要是用來對表單提交信息的過濾,防止sql注入(比如登錄界面),上傳的文件也需要進(jìn)行文件名后綴和大小進(jìn)行驗證,下面是一個簡單的表單驗證
header("Content-type:text/html;charset=utf-8"); $user = isset($_POST[‘user‘])?$_POST[‘user‘]:null; $password = isset($_POST[‘password‘])?$_POST[‘password‘]:null; $arr = array(‘png‘,‘gif‘,‘jpg‘); $uploads = move_uploaded_file($_FILES[‘face‘][‘tmp_name‘],‘uploads/‘.$_FILES[‘face‘][‘name‘]); $file = ‘uploads/‘.$_FILES[‘face‘][‘name‘]; if($uploads){ echo ‘上傳成功‘; } if(!preg_match("/^[/x{4e00}-/x{9fa5}]+$/u", $user)){ //正則檢查用戶名是否為全漢字組成 echo "用戶名只能由純漢字組成!"; die; }else if(!preg_match("/^[/x{4e00}-/x{9fa5}A-Za-z0-9_]+$/u",$password)){ //正則檢查密碼是否含有非法字符 echo ‘密碼不能包含特殊字符!‘; die; }else if(!in_array(pathinfo($file, PATHINFO_EXTENSION),$arr)){ echo "文件格式不正確"; die; }else{ echo ‘允許注冊!‘; }
附常用php正則表達(dá)式:
匹配中國郵政編碼:[1-9]/d{5}(?!/d)
匹配身份證:/d{15}|/d{18}
匹配ip地址:/d+/./d+/./d+/./d+
匹配網(wǎng)址URL的正則表達(dá)式:[a-zA-z]+://[^/s]*
匹配Email地址的正則表達(dá)式:/w+([-+.]/w+)*@/w+([-.]/w+)*/./w+([-.]/w+)*
匹配中文字符的正則表達(dá)式: [/u4e00-/u9fa5]
函數(shù):
preg_match():第一個參數(shù)為正則規(guī)則,第二個為被驗證的字符串,返回布爾值
preg_replace ():對一個字符串中附和正則規(guī)則的字符進(jìn)行字符替換
以上所述是小編給大家介紹的表單正則驗證及文件上傳驗證功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對VEVB武林網(wǎng)網(wǎng)站的支持!
新聞熱點
疑難解答
圖片精選