$_POST 是 PHP 预定义或超全局变量之一。它是一个键值对的关联数组,由 HTTP POST 方法传递给 URL,该方法在请求中使用 URLEncoded 或 multipart/form-data content-type。
- $HTTP_POST_VARS 也包含与 $_POST 相同的信息,但不是超全局变量,现已弃用。
- 使用 POST 请求将数据发送到服务器的最简单方法是将 HTML 表单的 method 属性指定为 POST。
假设浏览器的 URL 是 “http://localhost/hello.php”,则在 HTML 格式 “hello.html” 中设置 method=POST,如下所示 -
<html>
<body>
<form action="hello.php" method="post">
<p>First Name: <input type="text" name="first_name"/> </p>
<p>Last Name: <input type="text" name="last_name" /> </p>
<input type="submit" value="Submit" />
</form>
</body>
</html>
本练习的“hello.php”脚本(在文档根文件夹中)如下所示:
<?php
echo "<h3>First name: " . $_POST['first_name'] . "<br /> " .
"Last Name: " . $_POST['last_name'] . "</h3>";
?>
现在,在浏览器中打开 http://localhost/hello.html。您应该在屏幕上获得以下输出 -
当您按下 Submit 按钮时,数据将使用 POST 方法提交到 “hello.php”。
您还可以在 hello.php 将 HTML 表单与 PHP 代码混合,并使用 “PHP_SELF” 变量将表单数据发布到自身 -
<html>
<body>
<form action="<?php echo $_SERVER['PHP_SELF'];?>" method="post">
<p>First Name: <input type="text" name="first_name"/> </p> <br />
<p>Last Name: <input type="text" name="last_name" /></p>
<input type="submit" value="Submit" />
</form>
<?php
echo "<h3>First Name: " . $_POST['first_name'] . "<br /> " .
"Last Name: " . $_POST['last_name'] . "</h3>";
?>
</body>
</html>
它将产生以下输出 -

