php编程每天必学之表单验证
本文实例讲解了php表单验证的实现方法,分享给大家供大家参考,具体内容如下
1.PHP表单处理
welcome.html
<html> <body> <formaction="welcome.php"method="post"> Name:<inputtype="text"name="name"><br> E-mail:<inputtype="text"name="email"><br> <inputtype="submit"> </form> </body> </html>
welcome.php
<html> <body> <!--PHP超全局变量$_GET和$_POST用于收集表单数据(form-data)--> Welcome<?phpecho$_POST["name"];?><br> Youremailaddressis:<?phpecho$_POST["email"];?> </body> </html>
2.PHP表单验证完整实例
<html> <head> </head> <body> <?php //定义变量并设置为空值 $nameErr=$emailErr=$websiteErr=""; $name=$email=$website=""; if($_SERVER["REQUEST_METHOD"]=="POST"){ if(empty($_POST["name"])){ $nameErr="姓名是必填的"; }else{ $name=test_input($_POST["name"]); //检查姓名是否包含字母和空白字符 //preg_match()函数检索字符串的模式,如果模式存在则返回true,否则返回false。 if(!preg_match("/^[a-zA-Z]*$/",$name)){ $nameErr="只允许字母和空格"; } } if(empty($_POST["email"])){ $emailErr="电邮是必填的"; }else{ $email=test_input($_POST["email"]); //检查电子邮件地址语法是否有效 if(!preg_match("/([\w\-]+\@[\w\-]+\.[\w\-]+)/",$email)){ $emailErr="无效的email格式"; } } if(empty($_POST["website"])){ $website=""; }else{ $website=test_input($_POST["website"]); //检查URL地址语法是否有效(正则表达式也允许URL中的斜杠) if(!preg_match("/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i",$website)){ $websiteErr="无效的URL"; } } } functiontest_input($data){ //去除用户输入数据中不必要的字符(多余的空格、制表符、换行) $data=trim($data); //删除用户输入数据中的反斜杠(\) $data=stripslashes($data); //把特殊字符转换为HTML实体 $data=htmlspecialchars($data); return$data; } ?> <h2>PHP验证实例</h2> <p><spanclass="error">*必需的字段</span></p> <!--htmlspecialchars()函数把特殊字符转换为HTML实体。--> <formmethod="post"action="<?phpechohtmlspecialchars($_SERVER["PHP_SELF"]);?>"> <!--value:保留表单中的值--> 姓名:<inputtype="text"name="name"value="<?phpecho$name;?>"> <spanclass="error">*<?phpecho$nameErr;?></span> <br><br> 邮箱:<inputtype="text"name="email"value="<?phpecho$email;?>"> <spanclass="error">*<?phpecho$emailErr;?></span> <br><br> 网址:<inputtype="text"name="website"value="<?phpecho$website;?>"> <spanclass="error"><?phpecho$websiteErr;?></span> <br><br> <inputtype="submit"name="submit"value="提交"> </form> <?php echo"<h2>您的输入:</h2>"; echo$name; echo"<br>"; echo$email; echo"<br>"; echo$website; echo"<br>"; ?> </body> </html>
希望本文所述对大家学习php程序设计有所帮助。