PHP Superglobals Variable পর্ব-২ (What is $_GET, $_POST and $_REQUEST Superglobals in PHP?)

HTTP Request GET Method যুক্ত HTML FORM অথবা URL এর মাধ্যমে পাঠানো Data বা তথ্য PHP সার্ভার থেকে Receive বা গ্রহণ করার জন্য $_GET Superglobals variable টি ব্যবহার করা হয়। একই ভাবে HTTP Request POST Method যুক্ত HTML FORM এর পাঠানো Data বা তথ্য Receive বা গ্রহণ করার জন্য $_POST Superglobal Variable টি ব্যবহার করা হয়। আবার FORM (GET এবং POST উভয় Method) অথবা URL এর মাধ্যমে পাঠানো Data বা তথ্য অথবা Browser এ সংরক্ষিত যেকোনো Cookie Variable কে receive বা গ্রহণ করার জন্য $_REQUEST superglobal Variable টি ব্যবহৃত হয়।

HTTP Request Method গুলোর মধ্যে GET and POST এর মধ্যে কোনো পার্থক্য আছে ?

হাঁ HTTP Request Method গুলোর মধ্যে GET and POST এর মধ্যে অনেক গুলো পার্থক্য বিদ্যমান , নিচে সবগুলো পার্থক্য আলোচনা করা হয়েছে :

GET

  • GET Method এর মাধ্যমে পাঠানো data ব্রাউজারে Cache করা যায়।
  • GET Method এর মাধ্যমে পাঠানো data ব্রাউজারের history তে থাকে।
  • GET Method এর মাধ্যমে পাঠানো data বুকমার্ক করা যায়।
  • GET Method এর মাধ্যমে পাঠানো data ব্রাউজারের URL এ দেখা যায়। সুতরাং যেকোনো sensetive বা গোপন তথ্য GET Method এর মাধ্যমে না পাঠানো উচিত।
  • GET Method এর মাধ্যমে বেশি ডাটা পাঠানো যায়না।
  • GET Method তুলনা মূলক POST Method থেকে দ্রুত গতিতে data পাঠাতে পারে।
  • GET Method এর মাধ্যমে সার্ভার এ File Upload করা যায়না।

POST

  • POST Method এর মাধ্যমে পাঠানো data ব্রাউজারে Cache করা যায় না ।
  • POST Method এর মাধ্যমে পাঠানো data ব্রাউজারের history তে থাকে না ।
  • POST Method এর মাধ্যমে পাঠানো data বুকমার্ক করা যায় না ।
  • POST Method এর মাধ্যমে পাঠানো data ব্রাউজারের URL এ দেখা যায় না । সুতরাং যেকোনো sensetive বা গোপন তথ্য POST Method এর মাধ্যমে পাঠানো যেতে পারে ।
  • POST Method এর মাধ্যমে যত ইচ্ছা ডাটা পাঠানো যায়।
  • POST Method তুলনা মূলক GET Method থেকে slow হয় ।
  • POST Method এর মাধ্যমে সার্ভার এ File Upload করা যায়।

কিভাবে $_GET দিয়ে HTML Form এর Data বা তথ্য সার্ভার থেকে Receive বা গ্রহণ করবো ?

$_GET দিয়ে HTML Form এর Data বা তথ্য সার্ভার থেকে Receive বা গ্রহণ করার জন্য নিচের ধাপ গুলো পূরণ করুন :

প্রথম ধাপ :

প্রথমে আমরা get.html নামে একটা html form বানাবো যার মেথড হবে get, এবং এই ফাইলটি আমাদের সার্ভার এ test folder এ রাখবো । নিচের কোডটি দেখুন 

<!DOCTYPE html>
<html>
<head>
    <title>HTML Form with Get Method Example</title>
</head>
<body>
<form method="get" action="process.php">
Name:<input type="text" name="name"><br>
Age: <input type="number" name="age"><br>
<input type="submit" name="submit" value="Send">
</form>
</body>
</html>

দ্বিতীয় ধাপ :

এবার আমরা একই ফোল্ডার অর্থাৎ test ফোল্ডারে process.php ফাইলটি নিচের কোড গুলো দিয়ে বানাবো:

<?php  
echo "<pre>";
//print_r($_REQUEST);
//OR
print_r($_GET);
echo "</pre>";
?>

Note:যেহেতু আপনার FORM টির method=”get” দেওয়া সুতরাং আপনি নিমেষেই $_GET অথবা $_REQUEST দুইটির যেকোনো একটি দিয়ে Form এর value receive করতে পারবেন।

তৃতীয় ধাপ :

এইবার আপনার ব্রাউজার এর address বার এ গিয়ে নিচের লিংকটি hit করুন :

http://localhost/test/get.php

চতুর্থ ধাপ:

এখন যদি আপনি Form টি পূরণ করে submit করেন, তাহলে আপনি form এর action পেজ অর্থাৎ process.php ফাইল এ আপনার GET মেথড এ পাঠানো input value গুলো পাবেন।

কিভাবে $_POST দিয়ে HTML Form এর Data বা তথ্য সার্ভার থেকে Receive বা গ্রহণ করবো ?

$_POST দিয়ে HTML Form এর Data বা তথ্য সার্ভার থেকে Receive বা গ্রহণ করার জন্য নিচের ধাপ গুলো পূরণ করুন :

প্রথম ধাপ :

প্রথমে আমরা post.html নামে একটা html form বানাবো যার মেথড হবে get, এবং এই ফাইলটি আমাদের সার্ভার এ test folder এ রাখবো । নিচের কোডটি দেখুন :

<!DOCTYPE html>
<html>
<head>
    <title>HTML Form with Get Method Example</title>
</head>
<body>
<form method="post" action="process2.php">
Name:<input type="text" name="name"><br>
Age: <input type="number" name="age"><br>
<input type="submit" name="submit" value="Send">
</form>
</body>
</html>

দ্বিতীয় ধাপ :

এবার আমরা একই ফোল্ডার অর্থাৎ test ফোল্ডারে process2.php ফাইলটি নিচের কোড গুলো দিয়ে বানাবো:

<?php  
echo "<pre>";
//print_r($_REQUEST);
//OR
print_r($_POST);
echo "</pre>";
?>

Note:যেহেতু আপনার FORM টির method=”post” দেওয়া সুতরাং আপনি নিমেষেই $_POST অথবা $_REQUEST দুইটির যেকোনো একটি দিয়ে Form এর value receive করতে পারবেন।

তৃতীয় ধাপ :

এইবার আপনার ব্রাউজার এর address বার এ গিয়ে নিচের লিংকটি hit করুন :

http://localhost/test/post.php

চতুর্থ ধাপ:

এখন যদি আপনি Form টি পূরণ করে submit করেন, তাহলে আপনি form এর action পেজ অর্থাৎ process2.php ফাইল এ আপনার POST মেথড এ পাঠানো input value গুলো পাবেন ।

Leave A Reply

Your email address will not be published. Required fields are marked *