..."."/> ...".">
Home > Article > Backend Development > What is the usage of post in php
The main purpose of the post method in php is to "pass" data. It puts the data after all request headers and uploads it, using code statements such as "e5315d385ac931bc772ba580c28c6ea4...".
Recommended: "PHP Video Tutorial"
$_POST Array
The original intention of the GET method is to download (corresponding to the upload method PUT), so it is not specifically used to transfer data. It will URL-encode all the requested data and suffix it after the requested resource. In this way, when there is a lot of data The URL will become very long - but this is not the problem. The problem is that some WEB browsers or server programs limit the length of this line of string. At this time, you need to use the POST method.
As the name suggests, the main purpose of the POST method is to "pass" data. It puts the data after all request headers and uploads it. In this way, no matter how much data is uploaded, it will not be a problem (the size of the request data is It depends on the size allowed by the WEB service). Generally speaking, if there is no special need for form data, the POST method is used to upload it, so there is no need to care about the specific size of the uploaded data.
The request data of the POST method is encapsulated into the $_POST array, and its usage is the same as the $_GET array. Add a method attribute to the above form and it becomes like this:
<!– post.php文件 –> <?php if($_POST['post']) { foreach($_POST as $index = > $value) echo “$_POST[$index] = $value”, “<BR>”; } ?> <form action=”post.php” method=”post”> <label for=”id”>账号:</label><input type=”text” name=”id”> <label for=”password”>密码:</label><input type=”text” name=”password”> <input type=”submit” name=”post” value=”提交”> </form>
Another interesting setting is that the GET method and the POST method are not inconsistent. The GET variable can also be passed in the POST method. The above post.php file is slightly modified and it becomes like this:
<!– post.php文件 –> <?php if($_POST['post']) { foreach($_POST as $index = > $value) echo “$_POST[$index] = $value”, “<BR>”; foreach($_GET as $index = > $value) echo “$_GET[$index] = $value”, “<BR>”; } ?> <form action=”post.php?act=login” method=”post”> <label for=”id”>帐号:</label><input type=”text” name=”id”> <label for=”password”>密码:</label><input type=”text” name=”password”> <input type=”submit” name=”post” value=”提交”> </form>
This program handles the request data of the GET method (act parameter) and the POST method (id and password parameters) at the same time. The request of the GET method The variable suffix is after the form action attribute value. The only problem with this is that the request variable of the GET method cannot be entered by the user. Usually, fixed data is sent using the GET method, and data entered by the user is sent using the POST method. The two methods distinguish data with different logics. However, when building this form, readers must pay attention not to have the same variable name in the two methods, otherwise unpredictable consequences will occur. Finally, it should be noted that when using the GET method to send data, the query string cannot be included in the action attribute value of the ff9c23ada1bcecdd1a0fb5d5a0f18437 tag (even if it is included, it will not take effect). Therefore, in the following form, the act parameter will not be able to Send:
<form action=”post.php?act=login” method=”get”> <label for=”id”>账号:</label><input type=”text” name=”id”> <label for=”password”>密码:</label><input type=”text” name=”password”> <input type=”submit” name=”post” value=”提交”> </form>
should be changed to the following form:
<form action=”post.php” method=”get”> <label for=”id”>账号:</label><input type=”text” name=”id”> <label for=”password”>密码:</label><input type=”text” name=”password”> <input type=”submit” name=”post” value=”提交”> <input type=”hidden” name=”act” value=”login”> </form>
The above is the detailed content of What is the usage of post in php. For more information, please follow other related articles on the PHP Chinese website!