$ _POST的目的是什么?

时间:2009-06-24 17:34:18

标签: php

我知道它是php全局变量,但我不确定,它做了什么? 我也从官方的php网站上读过,但是不明白。

11 个答案:

答案 0 :(得分:5)

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

$_POST是用于获取通过网络表单发送的数据的变量。

这是一个简单的页面,描述了$_POST以及如何在W3Schools中使用它:PHP $_POST Function

基本上:

在您的第一页上使用这样的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'];
?>

答案 1 :(得分:4)

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

     
  • GET
  •  
  • POST

假设你有一个&lt; form&gt;在页面上。

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

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

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

<form method="get">
  <input type="text" name="yourName" />
  <input type="submit" />
</form>

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

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

答案 2 :(得分:1)

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

示例:


Your page contains:

<form action="welcome.php" method="post">
Name: <input type="text" name="fname" />
Age: <input type="text" name="age" />
<input type="submit" />
</form> 


One the user submits the values input into the form, you can access those variables through $_POST using the names you provided for the input tags.

Welcome <?php echo $_POST["fname"]; ?>!<br />
You are <?php echo $_POST["age"]; ?> years old.

答案 3 :(得分:1)

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

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

<form method="post"> 

通过POST传递这些值。

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

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

答案 4 :(得分:1)

您可以从表单中捕获帖子值:

示例:

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

为此,您将使用:

$_POST["txtName"];

答案 5 :(得分:1)

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

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

可以通过

访问
$_POST["email"]

答案 6 :(得分:1)

它包含通过POST方法提交的数据,只包含POST方法,而不是通过GET方法提交的数据。 $ _REQUEST超全局变量包含$ _POST和$ _GET数据。

答案 7 :(得分: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完成。

答案 8 :(得分:1)

根据Hypertext Transfer Protocol specifications的定义,客户端(Web浏览器)可以对资源(Web服务器)进行多种类型的请求。

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

如果您点击指向“http://example.com/index.php?x=123&y=789”的链接,则index.php将使用$_GET$_GET['x'] = '123'填充$_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'数组;

答案 9 :(得分: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的话,你可以使用$ _POST。

如果您想知道应该使用哪种方法,start here

答案 10 :(得分:0)

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