PHP ফর্ম প্রক্রিয়াকরণ
- পূর্ববর্তী পৃষ্ঠা PHP সুপারগ্লোবাল
- পরবর্তী পৃষ্ঠা PHP ফর্ম ভ্রূণিকরণ
PHP সুপারগ্লোবাল ভেচরা $_GET এবং $_POST ফর্ম-ডেটা (form-data) সংগ্রহ করার জন্য ব্যবহৃত হয়。
PHP - একটি সাধারণ HTML ফর্ম
এই উদাহরণটি একটি সাধারণ HTML ফর্মকে দেখায় যা দুটি ইনপুট ফিল্ড এবং একটি সমর্থন বাটন ধারণ করে:
প্রয়োগ
<html> <body> <form action="welcome.php" method="post"> নাম: <input type="text" name="name"><br> ই-মেইল: <input type="text" name="email"><br> <input type="submit"> </form> </body> </html>
যখন ব্যবহারকারী এই ফর্মটি পূরণ করে এবং সমর্থন বাটন ক্লিক করে, তখন ফর্ম ডাটা "welcome.php" নামক PHP ফাইলে পাঠানো হয় এবং প্রক্রিয়াকরণ করা হয়। ফর্ম ডাটা HTTP POST পদ্ধতিতে পাঠানো হয়。
যদি আপনারা পাঠানো ডাটা দেখাতে চান, তবে সহজেই সকল ভেক্টরকে (echo) প্রদর্শিত করতে হবে। "welcome.php" ফাইলটি এমনই হয়:
<html> <body> স্বাগত <?php echo $_POST["name"]; ?><br> আপনার ইমেইল ঠিকানা: <?php echo $_POST["email"]; ?> </body> </html>
আউটপুট:
স্বাগত Bill আপনার ইমেইল ঠিকানা: Bill.Gates@example.com
HTTP GET পদ্ধতিতেও একই ফলাফল পাওয়া যায়:
প্রয়োগ
<html> <body> <form action="welcome_get.php" method="get"> নাম: <input type="text" name="name"><br> ই-মেইল: <input type="text" name="email"><br> <input type="submit"> </form> </body> </html>
"welcome_get.php" এমনই একটি হয়:
<html> <body> স্বাগত <?php echo $_GET["name"]; ?><br> আপনার ইমেইল ঠিকানা: <?php echo $_GET["email"]; ?> </body> </html>
উপরোক্ত কোড অত্যন্ত সরল। কিন্তু, সবচেয়ে গুরুত্বপূর্ণ বিষয়টি বাদ দিয়ে গেছে। আপনাকে ফর্ম ডাটা পরীক্ষা করতে হবে, যাতে স্ক্রিপ্টে লুকা থাকে না。
মন্তব্য:PHP ফর্ম প্রক্রিয়াকরণের সময় নিরাপত্তা দেখতে রাখুন!
এই পৃষ্ঠাতে কোনও ফর্ম পরীক্ষা প্রোগ্রাম নেই, এটা আমাদের শুধুমাত্র ফর্ম ডাটা পাঠানো এবং গ্রহণ করার কিভাবনো দেখায়。
কিন্তু পরবর্তী চপ্ত্রগুলিতে আপনাকে শিখানো হবে কিভাবে PHP ফর্মের নিরাপত্তা বাড়াতে হবে! ফর্মের উপযুক্ত নিরাপত্তা পরীক্ষা হ্যাকার হামলা এবং স্প্যাম বুলেটিন প্রতিরোধ করার জন্য অত্যন্ত জরুরী!
GET vs. POST
GET এবং POST উভয়ই একটি আইসিএফ (যেমন, array( key => value, key2 => value2, key3 => value3, ...)) তৈরি করে। এই আইসিএফ-এ কী/মূল্য যুগ্ম রয়েছে, যার কী ফর্ম কন্ট্রোলারের নাম এবং মূল্য ব্যবহারকারীর ইনপুট ডাটা।
GET এবং POST-একইসঙ্গে $_GET এবং $_POST হয়।তারা সুপারগ্লোবাল বলে চিহ্নিত হয়, যার মানে তাদের পরিবর্তনীয়তা নিয়ে ভেবে কোনো বিশেষ কোড লেখা যায় না - কোনো বিশেষ কোড লেখা যায় না, আপনি যে কোনো ফাংশন, ক্লাস বা ফাইল থেকেও তাদের অ্যাক্সেস করতে পারেন।
$_GET এইচটিপিএস URL পারামিটার দ্বারা পাঠানো বদলীর একটি বিন্যাস হয়。
$_POST এইচটিপিএস POST পদ্ধতিতে পাঠানো বদলীর বদলির একটি বিন্যাস হয়。
কবে GET ব্যবহার করা যায়?
GET পদ্ধতিতে ফর্ম থেকে পাঠানো তথ্যসব লোকের কাছে দেখা যায়এবং (সব পরিবর্তনীয় নাম এবং মূল্যগুলি URL-তে দেখা যায়)।GET-এর পাঠানো তথ্যের পরিমাণও সীমিত।সীমাবদ্ধতা প্রায় 2000 অক্ষর।তবে, URL-তে পরিবর্তনীয় থাকায়, পৃষ্ঠা বুকমার্ক করা যায় আরও সহজভাবে。
GET অসংবেদনশীল তথ্য পাঠানোর জন্য ব্যবহার করা যায়。
মন্তব্য:পাসওয়ার্ড বা অন্যান্য সংবেদনশীল তথ্য পাঠানোর জন্য GET-এর ব্যবহার করা না হবে!
কবে POST ব্যবহার করা যায়?
POST পদ্ধতিতে ফর্ম থেকে পাঠানো তথ্যঅন্য লোকদের কাছে দেখা যায় নাএবং পাঠানো তথ্যের পরিমাণও (সব নাম/মূল্য এই এইচটিপিএস রিকোর্ডের মূল অংশে এম্বেড হয়) নির্বাচিত হয়অসীমিত。
এছাড়া, POST মাল্টিপার্ট বাইনারি ইনপুটের মতো উচ্চমানের ফাংশনগুলির সমর্থন করে, যেগুলি সার্ভারের কাছে ফাইল আপলোড করার সময় ব্যবহার করা হয়。
তবে, URL-তে পরিবর্তনীয় না থাকায়, পৃষ্ঠা বুকমার্ক করা যায় না。
টীকা:ডেভেলপাররা POST-এর মাধ্যমে ফর্ম ডাটা পাঠানোর পছন্দ করেন。
আমরা এখন দেখতে যাই কিভাবে PHP ফর্মটিকে নিরাপদভাবে প্রক্রিয়াকরণ করা যায়!
- পূর্ববর্তী পৃষ্ঠা PHP সুপারগ্লোবাল
- পরবর্তী পৃষ্ঠা PHP ফর্ম ভ্রূণিকরণ