متغيرات PHP _GET دولار و _POST دولار

هناك طريقتان لإرسال البيانات من متصفح العميل إلى خادم الويب:
  • طريقة GET
  • طريقة POST
يتم تخزين البيانات المرسلة في متغيرات PHP $ _GET و $ _POST والتي تعد جزءا من المتغيرات العالمية ويمكن تسميتها في أي مكان في كود PHP. يتم استخدام المتغيرين $ _GET و $ _POST لقراءة المعلومات المرسلة إلى جدول من كود HTML باستخدام طرق get and post ويتم التقاطها بواسطة خادم PHP. بمعنى آخر ، تسمح المتغيرات $ _GET و $ _POST للصفحات بالتواصل مع بعضها البعض.

تحتوي صفحة HTML أدناه على نموذج HTML مع عناصر إدخال من أنواع مختلفة: نص ، كلمة مرور ، مربع اختيار ، راديو ، حدد ... عندما يملأ المستخدم هذه العناصر وينقر على زر الإرسال ، سيتم نقل البيانات إلى ملف الوجهة "exemple.php" المحدد في سمة الإجراء الخاصة بالنموذج.

تعرض الصورة التالية مثالا لنموذج HTML باستخدام طريقة GET والنتيجة التي تم التقاطها بواسطة الصفحة PHP.

مثال على نموذج HTML و php

طريقة GET

ترسل طريقة GET المعلومات المشفرة إلى صفحة الوجهة. يتم فصل الصفحة والمعلومات المشفرة حسب الحرف. ?.  < / div>

< / div>
http://www.exemple.com/index.php?name1=valeur1& ؛ name2 = value2
< / pre>دعنا نلقي نظرة على نموذج HTML أدناه. في عنصر النموذج ، يجب عليك تحديد كيفية إرسال المعلومات إلى الخادم في "الطريقة".

< إجراء النموذج = "imprime_infos.php" الطريقة = "GET" > 
اسم المستخدم: < نوع الإدخال = "النص" الاسم = "الاسم" / > < / > العمر: < نوع الإدخال = اسم "النص" = "العمر" / > < / >< نوع الإدخال = قيمة "إرسال" = "إرسال"> < / >< / شكل>
< / pre>

مثال على نموذج HTML مع طريقة الحصول على

داخل ملف "imprime_infos.php" ، استخدمنا متغير _GET دولار لجمع القيم المستلمة (الاسم والعمر).

<؟ php
if ( $ _GET ["name"] || $ _GET ["العمر"] ) {
صدى "مرحبا". _GET دولار ['الاسم']. "< br/>";
صدى "لديك". _GET دولار ['العمر']. "سنوات".
}
؟>
< / pre>بعد تنفيذ الكود باستخدام خادم WampServer ، حصلنا على النتيجة المذكورة أعلاه ، والتي تظهر معلوماتها في شريط العناوين.

$ _GET وشكل< / a>< / div>

< / div>
- تنتج طريقة GET سلسلة طويلة من الأحرف التي تظهر في سجل الخادم وسجل المتصفح.
- يقتصر عدد الأحرف المرسلة بطريقة GET على 1024 حرفا فقط. لذلك لا يمكننا إرسال نص طويل.
- لا تستخدم أبدا طريقة GET لإرسال معلومات حساسة مثل كلمة المرور أو رقم بطاقة الائتمان والرمز.
- لا يمكن ل GET إرسال البيانات الثنائية ، مثل الصور والمستندات ، إلى server.
- يمكن الوصول إلى البيانات المرسلة بواسطة طريقة GET باستخدام متغيرات البيئة QUERY_STRING.
- يحتوي PHP على مصفوفة _GET دولارات للوصول إلى جميع المعلومات المرسلة باستخدام GET.
- يجب استخدام GET فقط لاسترداد المعلومات.

The POST

كما هو موضح أعلاه ، فإن طريقة GET ليست آمنة على الإطلاق ، وبالتالي ، فقد أدى ذلك إلى مطوري PHP لتطوير حل فعال لإرسال المعلومات دون ظهورها في شريط العناوين. بالإضافة إلى ذلك ، يقتصر GET على 1024 حرفا. لذلك ، من الأفضل إرسال بيانات النموذج باستخدام طريقة POST. تعمل طريقة POST مثل طريقة GET ، ولكنها أكثر أمانا من GET لأن القيم غير مرئية في شريط عنوان المتصفح ولا يتم حفظها في محفوظات المتصفح.

لاستخدام POST ، ضع الكلمة الأساسية POST بدلا من GET.

< pre class = "prettyprint lang-php">< إجراء النموذج = "imprime_infos.php" الطريقة = "POST">
اسم المستخدم: < نوع الإدخال = "النص" الاسم = "الاسم" / > < / > العمر: < نوع الإدخال = اسم "النص" = "العمر" / > < / >< نوع الإدخال = قيمة "إرسال" = "إرسال"> < / >< / شكل> < / pre>ولجمع المعلومات ، استخدم المتغير $ _POST:

< pre class = "prettyprint lang-php" ><؟ php
if ( $ _POST ["name"] || $ _POST ["العمر"] ) {
صدى "مرحبا". _POST دولار ['الاسم']. "< br/>";
صدى "لديك". _POST دولار ['العمر']. "سنوات".
}
؟> < / pre> يظهر وقت التشغيل أن المعلومات غير مرئية في شريط العناوين: