PHP Professional এবং Zend Certified PHP Engineer (ZCPE ) Course এ সীমিত সংখ্যক আসন বাকি আছে। আগ্রহীদেরকে অতিসত্বর মাসুদ আলম স্যার এর সাথে যোগাযোগ করার জন্য অনুরোধ করা যাচ্ছে। স্যার এর মোবাইল নম্বর : ০১৭২২ ৮১ ৭৫ ৯১

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

এই পর্বে আপনি জানতে পারবেন :

get post

PHP তে $_GET, $_POST, $_REQUEST Superglobals Variable কি ?

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 এর মধ্যে অনেক গুলো পার্থক্য বিদ্যমান , নিচের Table এ সবগুলো পার্থক্য আলোচনা করা হয়েছে :

  • 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 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

ফলাফল নিচের মতো করে দেখাবে :

get method

চতুর্থ ধাপ:

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

receive value by get method

কিভাবে $_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

ফলাফল নিচের মতো করে দেখাবে :

post method

চতুর্থ ধাপ:

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

receive value by post method

এই ক্যাটাগরির অন্যান্য পোস্ট:

Masud Alam
আমি মাসুদ আলম, বাংলাদেশের ৩৬ তম Zend Certified Engineer । ২০০৯ সালে কম্পিউটার সাইন্স থেকে বেচেলর ডিগ্রী অর্জন করি। দীর্ঘ ৮ বছর আমি Winux Soft, SSL Wireless, IBCS-PRIMAX, Max Group, Canadian International Development Agency (CIDA), Care Bangladesh, World Vision, Hellen Keller সহ বিভিন্ন দেশি বিদেশী কোম্পানিতে ওয়েব ডেভেলপমেন্ট এবং সফটওয়্যার ডেভেলপমেন্ট এর উপর বিভিন্ন লিডিং পজিশন এ চাকরি এবং প্রজেক্ট লিড করি। বিশেষ ভাবে বাংলাদেশের ১০০ জন জেন্ড সার্টিফাইড ইঞ্জিনিয়ার এর মধ্যে ৫২ জন ই আমার হাতে জেন্ড সার্টিফাইড হয়েছে। বর্তমানে TechBeeo Software Company তে সিইও হিসাবে আছি । পাশাপাশি w3programmers ট্রেনিং ইনস্টিটিউট এ PHP এর উপর Professional এবং Advance Zend Certified PHP -7 Engineering কোর্স করাই। আর w3programmers.com সাইট টি আমার।
One comment on “PHP Superglobals Variable পর্ব-২ (What is $_GET, $_POST and $_REQUEST Superglobals in PHP?)

Leave a Reply

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