النماذج والمتغيرات الخارجيه [ مقدمه في php , جزء 7 ]

دروس لتعلم كيفية البرمجه بـ PHP , أو بعض الأفكار البرمجيه المفيده ! أيضا لشرح بعض الدوال أو الكلاسات التي قام الأعضاء او الغير بعملها , لتدمجها ببرامجك .
مغلق
saanina
عبدالرحمــــن
مشاركات: 3762
اشترك في: 30 أغسطس 2004, 13:54

النماذج والمتغيرات الخارجيه [ مقدمه في php , جزء 7 ]

مشاركة بواسطة saanina »

يجب أن تكون قد إطلعت على الاجزاء السابقه ..
  1. ماهي php ؟
  2. مالذي أستطيع فعله مع php؟
  3. أريد أن أبدأ مع php ماذا احتاج؟
  4. صفحتك الأولى في php
  5. أشياء مفيده أخرى
  6. التعامل مع النماذج و المدخلات

لنبدأ :

تكلمنا في الجزء السابق عن النماذج , و ببساطه عن $_POST و $_GET..
وقلنا أن النماذج يتم إرسال المعلومات بعد إدخالها إلى صفحة php بعدة طرق , مثلاً هذا الكود الهتمل:

كود: تحديد الكل

<form action="foo.php" method="post">
   الأسم:  <input type="text" name="username" /><br />
    البريد: <input type="text" name="email" /><br />
    <input type="submit" name="submit" value="إرسل المعلومات!" />
</form>


وطبعا كما تعلمنا سابقاً أن صفحة php التي سوف يرسل لها النموذج يوضع في خاصيه action والصفحة في المثال تكون foo.php
وطريقة الإرسال تكون في خاصية method وهنا خاصية الإرسال هي post إذن يتم إستقبال المعلومات عن طريق $_
POST .

المعلومات التي يتم إستقبالها هي المتغيرات الخارجيه التي سوف نتكلم عنها ...

المتغيرات المستلمه من النماذج يتم إستلامها بناءاً على نوع النموذج post او get .. لكن هناك طرق أخرى لإستلام المتغيرات هذه بنوعيها .. وهي $_REQUEST وهي تشمل النوعين كلاهما , فلو كنت غير متأكد من نوع النموذج الذي سوف تستقبل منه المتغيرات إستخدم هذه ..

بعض المستضيفين يفعّل الإستقبال بدون الحالجه لهذه الأنواع , فلو كان الحقل بإسم username يتم إستقباله
كـمتغير عادي $username وتسمى هذه الخاصيه "register globals" أي تسجيل المتغيرا كمتغيرات عامه, ولافرق بين المتغيرات الخارجيه والمحليه .. لكن إنتبه فهذه الخاصيه خطره ولاتستخدمها , ولو كانت مفعله لديك في الاستضافه قم بطلب بتعطيلها.


عرفنا الآن أن استقبال المعلومات من النماذج يتم بناءاً على نوع النموذج وهناك طرق أخرى غير مفضله قلناها , لكن ركز على الأثنين $_POST و $_GET .

المثال السابق , كان عباره عن صفحه هتمل , قم بتسميتها أي أسم وليكن myform.html وضعها على الخادم والآن لنقم بإنشاء ملف الإستقبال foo.php ألذي سيتم إستقبال النموذج فيه . ولتكن محتوياته :

كود: تحديد الكل

<?php
   echo $_POST
['username'];
   echo $_REQUEST['username'];
?>


لاحظ أن الإسم سيطبع مرتين, لان $_REQUEST تجلب كل النوعين .

جميل لحد هنا . توضحت أمور كثيره . لكن لم نعطي $_GET حقه.
$_GET هو النوع الذي يستلم المعلومات من الرابط نفسه .
لاحظ الرابط هنا:

كود: تحديد الكل

localhost/foo.php?username=saanina

username هو المتغير الذي سوف يحمله $_GET

قم بحذف محتويات ملف foo.php ووضع :

كود: تحديد الكل

<?php
   echo $_GET
['username'];
   echo $_REQUEST['username'];
?>


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

لو لاحظت أن $_GET يتم حملها عن طريق الرابط , لذا هي لاتنفع للأمور المهمه مثل كلمات المرور أو مثل الحقول الطويله كحقل نص المقال مثلا ..

كن متابع للاجزاء ..


التالي >>
<< السابق
_____________
المصادر :
PHP: Variables From External Sources - Manual
مغلق