处理表单
Example #1 一个简单的 HTML 表单
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<form action="action.php" method="post">
<p>姓名: <input type="text" name="name"></p>
<p>年龄: <input type="text" name="age"></p>
<p><input type="submit"></p>
</form>
</body>
</html>
当用户填写了该表单并点击了提交按钮,页面action.php
将被调用。
action.php
的内容如下:
你好, <?php echo htmlspecialchars($_POST['name']); ?>
你 <?php echo (int)$_POST['age']; ?> 岁了。
htmlspecialchars()
使得HTML之中的特殊字符被正确的编码,从而不会被用户在页面注入HTML标签或者是JavaScript代码。例如age字段,它是一个数值,我们将它转换为一个整数(integer)来消除不必要的字符。也可以使用PHP的filter扩展来自动完成该工作。PHP将指定设置$_POST['name']
和$_POST['age']
变量。在这之前我们使用了超全局变量$_SERVER
,现在我们引入超全局变量$_POST
,它包含了所有的POST数据。如果表单使用GET方法提交,那么表单中的信息将被存储到超全局变量$_GET
中。也可以使用超全局变量$_REQUEST
,它包含了所有GET、POST、COOKIE和FILE的数据。