القائمة الرئيسية

الصفحات

طرق الادخل في النماذج المتغيرات $_GET و $_POST في php

لغة php : النماذج وطرق الادخال



تستخدم المتغيرات $_GET و $_POST لإسترجاع معلومات من النماذج مثل اسم المستخدم وغيرها .




التحكم بالنماذج


أكثر الأشياء أهمية عند التعامل مع نماذج HTML و PHP هو أن أي عنصر من النماج في صفحات HTML ستكون متوفرة تلقائياً مع أكواد PHP .

مثال

يحتوي المثال التالي على نموذج HTML مع حقلين من نماذج الادخال و أيضاً أيقونة إرسال :
<html>
		  <body>
		  <form action="welcome.php" method="post">
		  الاسم : <input type="text" name="fname" />
		  العمر : <input type="text" name="age" />
		  <input type="submit" value="ارسال" />
		  </form>

		  </body>
		  </html>



عند تعبئة الحقول في المثال السابق والضغط على الأيقونة ارسال سيتم ارسال البيانات الى ملف PHP و المسمى welcome.php

يجب أن يكون ملف welcome.php يحتوي على الكود التالي :
<html>
		  <body>
		  مرحباً <?php echo $_POST["fname"]; ?>!<br />
		  عمرك هو <?php echo $_POST["age"]; ?> عام.

		  </body>
		  </html>



ستظهر النتيجة على المتصفح حسب وضع البيانات في ذلك الملف 

مرحباً محمد !
عمرك هو 25 عام .

سيتم شرح المتغيرات $_GET و $_POST في الدرس القادم .




فعالية النماذج


يجب التأكد من فعالية نماذج الادخال التي يستخدمها الزائر ان أمكن لأن عمليه التأكد على المتصفح تعتبر سريعة و تقلل من ضغط التحميل على السيرفر .

يجب استخدام خاصية التأكد من نماذج الادخال وخاصة ان كان النموذج سيتم ارساله الى قاعدة البيانات . افضل طريقة لإنشاء تفعيل للنموذج على السيرفر هو ادراجه في النموذج نفسه بدلاً من الذهاب الى صفحة أخرى و عندها سيحصل المستخدم على رسالى الخطأ في نفس الصفحة و بتلك الطريقة يمكن استكشاف الأخطاء بسرعة و سهولة .




لغة php : المتغير GET



يستخدم المتغير $_GET في PHP لجمع القيم في النماذج مع الطريقة method="get"




المتغير $_GET


ترسل المعلومات عبر النماذج من خلال الطريقة GET وهي مرئية للجميع أي تظهر المعلومات على رابط المتصفح كما تحتوي على كمية محدودة من المعلومات المرسلة .

مثال
<form action="welcome.php" method="get">
	  الاسم : <input type="text" name="fname" />
	  العمر : <input type="text" name="age" />
	  <input type="submit" value="ارسال" />

	  </form>



عند الضغط على رز الارسال سيظهر على المتصفح المعلومات التي قمت بإدخالها في حقول النموذج .
http://www.w3arabiconline.com/welcome.php?fname=Peter&age=37
	  


يستخدم الملف welcome.php المتغير $_GET لجمع البيانات أي ستصبح الأسماء الخاصة بالنموذج عبارة وسوم للمصفوفة $_GET :
مرحباً بك <?php echo $_GET["fname"]; ?>.<br />
	  عمرك <?php echo $_GET["age"]; ?> عام
	  





متى نستخدم الطريقة method="get"


عند استخدام الطريقة method="get" في نماذج HTML عندها جميع الأسماء و القيم الموجودة ضمن وسم <input> ستظهر على رابط المتصفح .

ملاحظة 

  • لا يجب استخدام هذه الطريقة عند ارسال بيانات هامة مثل كلمة المرور أو أي معلومات حساسة . و على أي حال لأن المتغيرات يتم عرضها على رابط المتصفح يمكن استخدام bookmark علامة للصفحة و التي يمكن أن تكون مفيدة في بعض الحالات .

  • ان الطريقة get غير مناسبة عند ارسال كميات كبيرة من البيانات و أيضاً لايجب استخدامها عندما تتجاوز كمية القيم عند 2000 حرف .





لغة php : المتغير POST



يستخدم المتغير $_POST في PHP لجمع القيم في النماذج مع الطريقة method="post"



المتغير $_POST


ترسل المعلومات عبر النماذج من خلال الطريقة POST وهي غير مرئية للجميع أي لا تظهر المعلومات على رابط المتصفح كما تحتوي على كمية غير محدودة من المعلومات المرسلة .

ملاحظة : الحجم الكلي للطريقة POST هي 8 ميجابايت و بشكل افتراضي يمكن تغيير هذه الاعدادات من خلال ملف php.ini من خلال الضبط post_max_size .

مثال
<form action="welcome.php" method="post">
	  الاسم : <input type="text" name="fname" />
	  العمر : <input type="text" name="age" />
	  <input type="submit" value="ارسال" /></form>



عند الضغط على زر الارسال سيصبح الرابط كالتالي :

http://www.example.com/welcome.php

يستخدم الملف welcome.php المتغير $_POST لجمع البيانات أي ستصبح الأسماء الخاصة بالنموذج عبارة وسوم للمصفوفة $_POST :
مرحباً بك <?php echo $_POST["fname"]; ?>.<br />
	  عمرك <?php echo $_POST["age"]; ?> عام
	  




متى نستخدم الطريقة method="post"


ان المعلومات التي ترسل من النماذج من خلال الطريقة POST تكون مخفية عن الاخرين و غير محدودة بكمية المعلومات المرسلة .

وعلى أي حال وبسبب أن هذه الطريقة مخفية و لاتظهر على الرابط فهذه الطريقة غير صالحة لإنشاء علامات للصفحات bookmarks .



المتغير $_REQUEST


يحتوي المتغير المعرّف $_REQUEST في لغة PHP على محتوى كلاً من $_GET و $_POST و $_COOKIE .

يمكن أن يستخدم المتغير $_REQUEST لجمع بيانات النموذج و إرساله الى كلاً من الطريقتين GET و POST .

مثال
مرحباً بك <?php echo $_REQUEST["fname"]; ?>.<br />
	  عمرك <?php echo $_REQUEST["age"]; ?> عام