了解过 HTML 的同学都知道 form 表单中提交数据的方法有两种,分别是 POST 方法和 GET 方法。具体采用哪种方法提交表单数据则是由 form 表单的 method 属性值来决定的。
以 POST 方法为例,POST 方法不依赖于 URL,不会将传递的参数值显示在地址栏中。另外 POST 方法可以没有限制地传递数据到服务器,所有提交的信息在后台传输,用户在浏览器端是看不到这一过程的,安全性相对较高。所以,POST 方法比较适合用于发送一些重要的(如信用卡号)信息或者比较大量的数据到服务器。
提示:默认情况下 POST 方法的发送信息最大值为 8MB,后期可以通过修改 php.ini 配置文件中 post_max_size 的值进行更改。
而 PHP 的 $_POST 全局变量则是专门用于获取由 POST 请求发送的表单数据的。其数据结构是一个关联数组,数组的键名为表单元素 name 的值,数组的值为对应表单的值。在实际程序开发过程中,当 form 表单的 method 属性指定使用 POST 方式进行数据传递时,我们就应该使用 $_POST 来获取比表单的数据。
$_POST 全局变量的使用与普通数组是一样,可以直接以 $_POST['键值']
的形式访问其中的数据,下面通过一个简单的示例来演示一下。
【示例】使用 $_POST 全局变量获取 form 表单中传输的数据。
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>C语言中文网</title> </head> <body> <form action="index.php" method="post"> 姓名:<input type="text" name="name" placeholder="请输入姓名"><br> 性别:<input type="radio" name="sex" value="男">男 <input type="radio" name="sex" value="女">女<br> 爱好:<input type="checkbox" name="hobby[]" value="read">阅读 <input type="checkbox" name="hobby[]" value="travel">旅游 <input type="checkbox" name="hobby[]" value="sport">运动 <input type="checkbox" name="hobby[]" value="internet">上网<br> 职业:<select name="job"> <option value="coder">程序员</option> <option value="teacher">教师</option> <option value="doctor">医生</option> <option value="other">其它</option> </select><br> <input type="submit" value="提交">  <input type="reset" value="重置"> </form> </body> </html> <?php if(!empty($_POST)){ echo '提交成功!<br><pre>'; var_dump($_POST); } ?>
运行上面的代码,并在输入框中填入合适的信息,点击提交按钮即可将表单中填入的信息传递给 PHP 程序。然后 PHP 程序可以通过 $_POST 来接收表单中传递信息,并对这些信息进行处理,比如可以将数据保存到数据库或者输出到浏览器等等,详细代码就不演示了,大家可以自行动手尝试一下。
原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/24077.html