php语言 百分网手机站

php编程必学之表单验证

时间:2020-08-09 09:29:07 php语言 我要投稿

php编程必学之表单验证

  php编程每天必学之表单验证,针对php表单处理进行学习研究,以一个完整例子实现了php表单验证,感兴趣的小伙伴们可以参考一下.

  本文实例讲解了php表单验证的实现方法,分享给大家供大家参考,具体内容如下

  1.PHP表单处理

  welcome.html

  <html>

  <body>

  <form action="welcome.php" method="post">

  Name: <input type="text" name="name"><br>

  E-mail: <input type="text" name="email"><br>

  <input type="submit">

  </form>

  </body>

  </html>

  welcome.php

  <html>

  <body>

  <!--PHP 超全局变量 $_GET 和 $_POST 用于收集表单数据(form-data)-->

  Welcome <?php echo $_POST["name"]; ?><br>

  Your email address is: <?php echo $_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";

  }

  }

  }

  function test_input($data) {

  //去除用户输入数据中不必要的字符(多余的`空格、制表符、换行)

  $data = trim($data);

  //删除用户输入数据中的反斜杠(\)

  $data = stripslashes($data);

  //把特殊字符转换为 HTML 实体

  $data = htmlspecialchars($data);

  return $data;

  }

  ?>

  <h2>PHP 验证实例</h2>

  <p><span class="error">* 必需的字段</span></p>

  <!--htmlspecialchars() 函数把特殊字符转换为 HTML 实体。-->

  <form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">

  <!--value:保留表单中的值-->

  姓名:<input type="text" name="name" value="<?php echo $name;?>">

  <span class="error">* <?php echo $nameErr;?></span>

  <br><br>

  邮箱:<input type="text" name="email" value="<?php echo $email;?>">

  <span class="error">* <?php echo $emailErr;?></span>

  <br><br>

  网址:<input type="text" name="website" value="<?php echo $website;?>">

  <span class="error"><?php echo $websiteErr;?></span>

  <br><br>

  <input type="submit" name="submit" value="提交">

  </form>

  <?php

  echo "<h2>您的输入:</h2>";

  echo $name;

  echo "<br>";

  echo $email;

  echo "<br>";

  echo $website;

  echo "<br>";

  ?>

  </body>

  </html>

【php编程必学之表单验证】相关文章:

PHP 表单验证方法09-12

PHP 表单验证 E-mail 和 URL09-12

PHP中的表单处理09-10

PHP Socket编程过程09-13

PHP邮件发送验证08-17

php防止表单重复提交的方法09-30

php编程语言入门知识09-22

如何自学PHP编程语言09-11

PHP编程风格规范分享08-14

php如何实现验证码09-07