Get vs Post in php | Get and Post Methods in PHP

Get and Post Methods in PHP – Get vs Post in php

Get vs Post in php, PHP provides two methods through which a client (browser) can send information to the server. These methods are given below, and discussed in detail:

  1. GET method
  2. POST method

 

Get and Post methods are the HTTP request methods used inside the <form> tag to send form data to the server.

HTTP protocol enables the communication between the client and the server where a browser can be the client, and an application running on a computer system that hosts your website can be the server.

 

HTTP Request Methods

What is HTTP?

The Hypertext Transfer Protocol (HTTP) is designed to enable communications between clients and servers.

HTTP works as a request-response protocol between a client and server.

Example: A client (browser) sends an HTTP request to the server; then the server returns a response to the client. The response contains status information about the request and may also contain the requested content.

 

HTTP Methods

  • GET
  • POST
  • PUT
  • HEAD
  • DELETE
  • PATCH
  • OPTIONS

 

The two most common HTTP methods are GET and POST.

 

GET method

The GET method is used to submit the HTML form data. This data is collected by the predefined $_GET variable for processing.

The information sent from an HTML form using the GET method is visible to everyone in the browser’s address bar, which means that all the variable names and their values will be displayed in the URL. Therefore, the get method is not secured to send sensitive information.

 

For Example

localhost/gettest.php?username=Harry&bloodgroup=AB+

The bold part in the above URL is the variables name and the italic part contains the values for their corresponding variable.

Note that only a limited amount of information can be sent using the GET method.

With the help of an example, let’s understand how the GET method works-

 

Example

The below code will display an HTML form containing two input fields and a submit button. In this HTML form, we used the method = “get” to submit the form data.

file: test1.html

 

<form action = “gettest.php” method = “GET”>  

         Username: <input type = “text” name = “username” /> <br>  

         Blood Group: <input type = “text” name = “bloodgroup” /> <br>  

         <input type = “submit” />  

      </form>  

 

Create gettest.php file, which will accept the data sent by HTML form.

Welcome

echo $_GET[“username”]; ?> </br>  

      Your blood group is: <?php echo $_GET[“bloodgroup”]; 

 

When the user will click on Submit button after filling the form, the URL sent to the server could look something like this:

 

localhost/gettest.php?username=Harry&bloodgroup=AB-

The output will look like the below output:

Welcome Harry

Your blood group is: AB-

 

Advantages of GET method (method = “get”)

  • You can bookmark the page with the specific query string because the data sent by the GET method is displayed in the URL.
  • GET requests can be cached.
  • GET requests always remain in the browser history.

 

Disadvantages of getting Method

  • The GET method should not be used while sending any sensitive information.
  • A limited amount of data can be sent using method = “get”. This limit should not exceed 2048 characters.
  • For security reasons, never use the GET method to send highly sensitive information like username and password, because it shows them in the URL.
  • The GET method cannot be used to send binary data (such as images or word documents) to the server.

 

POST method

Similar to the GET method, the POST method is also used to submit the HTML form data. But the data submitted by this method is collected by the predefined superglobal variable $_POST instead of $_GET.

Unlike the GET method, it does not have a limit on the amount of information to be sent. The information sent from an HTML form using the POST method is not visible to anyone.

or Example

localhost/posttest.php  

Note that the “post” method is more secure than the “get” method because the data sent using the POST method is not visible to the user.

With the help of an example, let’s understand how the POST method works-

 

Example

The below code will display an HTML form containing two input fields and a submit button. In this HTML form, we used the method = “post” to submit the form data.

 

<form action = “posttest.php” method = “post”>

Username: <input type = “text” name = “username” /> <br>

Blood Group: <input type = “text” name = “bloodgroup” /> <br>

<input type = “submit” />

</form>

 

Now create posttest.php file to accept the data sent by HTML form.

file: posttest.php

Welcome  echo $_POST[“username”];  </br>  

      Your blood group is:  echo $_POST[“bloodgroup”];

 

When the user will click on Submit button after filling the form, the URL sent to the server could look something like this:

localhost/posttest.php

 

The output will look like the below output:

Welcome Harry

Your blood group is: O+

 

Advantages of POST method (method = “post”)

  • The POST method is useful for sending any sensitive information because the information sent using the POST method is not visible to anyone.
  • There is no limitation on the size of data to be sent using the POST Method. You can send a large amount of information using this method.
  • Binary and ASCII data can also be sent using the POST method.
  • Data security depends on the HTTP protocol because the information sent using the POST method goes through the HTTP header. By using secure HTTP, you can ensure that your data is safe.

Disadvantages of POST Method

  • POST requests do not cache.
  • POST requests never remain in the browser history.
  • It is not possible to bookmark the page because the variables are not displayed in the URL.

 

$_REQUEST variable

The $_REQUEST variable is a superglobal variable, which can hold the content of both the $_GET and $_POST variables. In other words, the PHP $_REQUEST variable is used to collect the form data sent by either GET or POST methods. It can also collect the data for the $_COOKIE variable because it is not a method-specific variable.

 

Related: for Get vs Post in php

 

People also ask for Get vs Post in php

What is the difference between getting and POST methods in PHP?

What is the difference between getting and POST methods?

What is $_ POST and $_ GET?

What is POST and get method.

Scroll to Top