دروس PHP

PHP الرئيسية مقدمة PHP تثبيت PHP بناء جملة PHP تعليقات PHP متغيرات PHP PHP صدى / طباعة أنواع بيانات PHP سلاسل PHP أرقام PHP PHP الرياضيات ثوابت PHP مشغلي PHP PHP إذا ... آخر ... Elseif مفتاح PHP حلقات PHP وظائف PHP مصفوفات PHP PHP Superglobals PHP RegEx

نماذج PHP

معالجة نموذج PHP التحقق من صحة نموذج PHP نموذج PHP مطلوب نموذج PHP URL / البريد الإلكتروني اكتمل نموذج PHP

PHP متقدم

تاريخ ووقت PHP تضمين PHP معالجة ملفات PHP فتح / قراءة ملف PHP إنشاء / كتابة ملف PHP تحميل ملف PHP ملفات تعريف الارتباط PHP جلسات PHP مرشحات PHP مرشحات PHP متقدم وظائف رد الاتصال PHP PHP JSON استثناءات PHP

PHP OOP

PHP ما هو OOP فئات / كائنات PHP منشئ PHP مدمر PHP معدِّلات الوصول إلى PHP الوراثة PHP ثوابت PHP فئات مجردة PHP واجهات PHP سمات PHP طرق PHP الثابتة خصائص PHP الثابتة مساحات أسماء PHP PHP تكرارات

قاعدة بيانات MySQL

قاعدة بيانات MySQL اتصال MySQL إنشاء قاعدة بيانات MySQL إنشاء جدول MySQL MySQL إدراج البيانات MySQL الحصول على آخر معرف إدراج عدة MySQL تم تجهيز MySQL MySQL حدد البيانات MySQL أين ترتيب MySQL حسب MySQL حذف البيانات تحديث بيانات MySQL بيانات MySQL المحدودة

لغة PHP XML

موزعي PHP XML محلل PHP SimpleXML PHP SimpleXML - احصل على PHP XML Expat PHP XML DOM

PHP - أجاكس

مقدمة أجاكس أجاكس بي إتش بي قاعدة بيانات أجاكس AJAX XML بحث أجاكس لايف استطلاع أجاكس

أمثلة PHP

أمثلة PHP مترجم PHP اختبار PHP تمارين PHP شهادة PHP

مرجع PHP

نظرة عامة على PHP صفيف PHP تقويم PHP تاريخ PHP دليل PHP خطأ PHP استثناء PHP نظام ملفات PHP مرشح PHP PHP FTP PHP JSON كلمات PHP PHP Libxml PHP Mail PHP الرياضيات متفرقات PHP PHP MySQLi شبكة PHP التحكم في إخراج PHP PHP RegEx PHP SimpleXML PHP ستريم سلسلة PHP معالجة متغيرة PHP محلل PHP XML PHP Zip المناطق الزمنية PHP

معالجة نموذج PHP


يتم استخدام PHP superglobals $ _GET و $ _POST لجمع بيانات النموذج.


PHP - نموذج HTML بسيط

يعرض المثال أدناه نموذج HTML بسيطًا مع حقلي إدخال وزر إرسال:

مثال

<html>
<body>

<form action="welcome.php" method="post">
Name: <input type="text" name="name"><br>
E-mail: <input type="text" name="email"><br>
<input type="submit">
</form>

</body>
</html>

عندما يملأ المستخدم النموذج أعلاه وينقر على زر الإرسال ، يتم إرسال بيانات النموذج للمعالجة إلى ملف PHP يسمى "welcome.php". يتم إرسال بيانات النموذج بطريقة HTTP POST.

لعرض البيانات المقدمة ، يمكنك ببساطة تكرار جميع المتغيرات. يبدو "welcome.php" كما يلي:

<html>
<body>

Welcome <?php echo $_POST["name"]; ?><br>
Your email address is: <?php echo $_POST["email"]; ?>

</body>
</html>

يمكن أن يكون الإخراج شيئًا كالتالي:

Welcome John
Your email address is [email protected]

يمكن أيضًا تحقيق نفس النتيجة باستخدام طريقة HTTP GET:

مثال

<html>
<body>

<form action="welcome_get.php" method="get">
Name: <input type="text" name="name"><br>
E-mail: <input type="text" name="email"><br>
<input type="submit">
</form>

</body>
</html>

و "welcome_get.php" تبدو هكذا:

<html>
<body>

Welcome <?php echo $_GET["name"]; ?><br>
Your email address is: <?php echo $_GET["email"]; ?>

</body>
</html>

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

فكر في الأمان عند معالجة نماذج PHP!

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

ومع ذلك ، ستوضح الصفحات التالية كيفية معالجة نماذج PHP مع وضع الأمان في الاعتبار! يعد التحقق الصحيح من بيانات النموذج أمرًا مهمًا لحماية النموذج الخاص بك من المتسللين ومرسلي البريد العشوائي!



GET مقابل POST

يقوم كل من GET و POST بإنشاء مصفوفة (مثل المصفوفة (key1 => value1، key2 => value2، key3 => value3، ...)). تحتوي هذه المصفوفة على أزواج من المفاتيح / القيمة ، حيث تكون المفاتيح هي أسماء عناصر تحكم النموذج والقيم هي بيانات الإدخال من المستخدم.

يتم التعامل مع كل من GET و POST كـ $ _GET و $ _POST. هذه هي superglobals ، مما يعني أنه يمكن الوصول إليها دائمًا ، بغض النظر عن النطاق - ويمكنك الوصول إليها من أي وظيفة أو فصل دراسي أو ملف دون الحاجة إلى القيام بأي شيء خاص.

$ _GET عبارة عن مجموعة من المتغيرات التي تم تمريرها إلى النص الحالي عبر معلمات URL.

$ _POST عبارة عن مجموعة من المتغيرات التي تم تمريرها إلى البرنامج النصي الحالي عبر طريقة HTTP POST.


متى تستخدم GET؟

المعلومات المرسلة من نموذج باستخدام طريقة GET مرئية للجميع (يتم عرض جميع أسماء المتغيرات والقيم في عنوان URL). لدى GET أيضًا قيود على كمية المعلومات التي يجب إرسالها. القيد حوالي 2000 حرف. ومع ذلك ، نظرًا لعرض المتغيرات في عنوان URL ، فمن الممكن وضع إشارة مرجعية على الصفحة. يمكن أن يكون هذا مفيدًا في بعض الحالات.

يمكن استخدام GET لإرسال بيانات غير حساسة.

ملاحظة: يجب عدم استخدام GET مطلقًا لإرسال كلمات المرور أو غيرها من المعلومات الحساسة!


متى تستخدم POST؟

المعلومات المرسلة من نموذج باستخدام طريقة POST غير مرئية للآخرين (جميع الأسماء / القيم مضمنة في نص طلب HTTP) وليس لها حدود على كمية المعلومات المراد إرسالها.

علاوة على ذلك ، يدعم POST الوظائف المتقدمة مثل دعم الإدخال الثنائي متعدد الأجزاء أثناء تحميل الملفات إلى الخادم.

ومع ذلك ، نظرًا لعدم عرض المتغيرات في عنوان URL ، لا يمكن وضع إشارة مرجعية على الصفحة.

يفضل المطورون POST لإرسال بيانات النموذج.

بعد ذلك ، لنرى كيف يمكننا معالجة نماذج PHP بالطريقة الآمنة!


تمارين PHP

اختبر نفسك مع التمارين

ممارسه الرياضه:

إذا تم إرسال النموذج الموجود في القسم الأبيض أدناه ، فكيف يمكنك ، في welcome.php ، إخراج القيمة من حقل "الاسم الأول"؟

<form action="welcome.php" method="get"> First name: <input type="text" name="fname"> </form>
<html> <body> Welcome <?php echo ; ?> </body> </html>