1

我知道它是 php 全局变量,但我不确定,它有什么作用?我也从官方 php 站点阅读,但不明白。

4

11 回答 11

6

您可能想阅读 PHP 的基础知识。尝试阅读一些入门教程。

$_POST是一个变量,用于抓取通过 Web 表单发送的数据。

这是 W3Schools 的一个简单页面描述$_POST以及如何使用它:PHP $_POST 函数

基本上:

在您的第一页上使用这样的 HTML:

<form action="submit.php" method="post">
  Email: <input type="text" name="emailaddress" /> <input type="submit" value="Subscribe" />
</form>

然后submit.php使用这样的东西:

<?
  echo "You subscribed with the email address:";
  echo $_POST['emailaddress'];
?>
于 2009-06-24T17:37:38.993 回答
4

通常有两种方式向服务器发送 HTTP 请求:

  • 得到
  • 邮政

假设您在页面上有一个 <form>。

<form method="post">
  <input type="text" name="你的名字" />
  <input type="提交" />
</form>

注意表单的“method”属性设置为“post”。所以在接收这个 HTTP 请求的 PHP 脚本中,$_POST[ 'yourName' ] 将在这个表单被提交时有这个值。

如果您在表单中使用了 GET 方法:

<form method="get">
  <input type="text" name="你的名字" />
  <input type="提交" />
</form>

然后 $_GET['yourName'] 将具有表单发送的值。

$_REQUEST['yourName'] 包含所有发布的变量,无论它们是通过 GET 还是 POST 发送的。

于 2009-06-24T17:42:44.400 回答
1

它用于通过发送到您的页面的 POST 存储 CGI 输入。

例子:

您的页面包含:

<form action="welcome.php" method="post">
名称:<input type="text" name="fname" />
年龄:<input type="text" name="age" />
<input type="提交" />
</form>


用户将输入的值提交到表单中,您可以使用您为输入标签提供的名称通过 $_POST 访问这些变量。

欢迎 <?php echo $_POST["fname"]; ?>!<br />
你是 <?php echo $_POST["age"]; ?> 岁。

于 2009-06-24T17:36:15.983 回答
1

$_POST 用于检索通过 POST 请求传递给您的页面的值。

例如,您的页面使用表单将数据传递到应用程序中的另一个页面。你的表格会有

<form method="post"> 

通过 POST 传递这些值。

它由 $_GET 匹配,它对 GET 请求执行相同的功能。

如果您希望能够引用 GET/POST 值,您可以使用 $_REQUEST

于 2009-06-24T17:37:45.407 回答
1

您可以从表单中捕获 post 值:

例子:

<form method="POST">
    <input type="text" name="txtName" value="Test" />
</form>

为此,您将使用:

$_POST["txtName"];
于 2009-06-24T17:38:10.583 回答
1

它包含由 HTTP post 发送的数据,这通常来自 HTML FORM。

<form action="page.php" method="post">
<input type="text" name="email" ...>
...
</form>

可通过以下方式访问

$_POST["email"]
于 2009-06-24T17:38:32.940 回答
1

它包含通过 POST 方法提交的数据,并且仅包含 POST 方法,与通过 GET 方法提交的数据。$_REQUEST 超全局变量包含 $_POST 和 $_GET 数据。

于 2009-06-24T17:39:01.737 回答
1

当数据通过表单发布到服务器时,您可以通过 $_POST 数组访问它:

<form method="post">
  <p><input type="text" name="firstname" /></p>
  <p><input type="submit" /></p>
</form>

--

<?php

  if ($_POST)
    print $_POST["name"];

?>

并非所有数据都是通过 $_POST 发送的。文件上传是通过 $_FILES 完成的。

于 2009-06-24T17:40:40.847 回答
1

正如超文本传输​​协议规范所定义的,客户端(Web 浏览器)可以向资源(Web 服务器)发出多种类型的请求。

两种最常见的 Web 请求类型是 GET 和 POST。PHP 自动将任何客户端请求数据加载到全局数组中,$_GET$_POST根据接收到的 Web 请求的类型。请求的类型对 Web 浏览器的用户是透明的,并且仅基于页面中发生的情况。但是,一般来说,您单击的任何常规链接都会产生 GET 请求,而您提交的任何表单都会产生 POST 请求。

如果您单击指向“ http://example.com/index.php?x=123&y=789 ”的链接,则 index.php 的$_GET数组中将填充$_GET['x'] = '123'and $_GET['y'] = '789'

如果您提交的表单具有以下结构:

<form action="http://example.com/index.php" method="post">
<input type="text" name="x">
</form>

然后接收脚本 index.php 将在其$_POST数组中填充$_POST['x'] = 'whatever you typed into the textbox named x';

于 2009-06-24T17:43:04.243 回答
1

将数据从表单发送到 Web 应用程序有两种方法,GET 和 POST。

GET 将数据作为 URL 字符串的一部分发送:这http://www.example.com/get.html?fred=1&sam=2是一个示例。将它用于所有处理存在一些问题,最大的问题之一是每个浏览器的查询字符串的最大长度不同,因此您的数据可能会被截断。

POST 将它们与 URL 分开发送。您避免了短长度限制,而且您可以使用 POST 发送二进制或加密数据。

在上面的第一个示例中,PHP 可以检索 $_GET['fred'] 和 $_GET['sam'] 发送的值。如果表单已发布,您将改用 $_POST。

如果您想知道应该使用哪种方法,请从这里开始

于 2009-06-24T18:47:04.407 回答
0

它包含从 HTML 表单发布到此脚本的任何值。

于 2009-06-24T17:36:14.800 回答