التعامل مع النماذج و المدخلات [ مقدمه في php , جزء 6 ]
مرسل: 12 أكتوبر 2008, 15:07
يجب أن تكون قد إطلعت على الاجزاء السابقه ..
غالباً لا يخلو موقع من النماذج "forms" وهي عباره عن مجموعة حقول مختلفه تطلب من الزائر مثلا إدخال معلومات فيها , هذا هو سر تفاعلية صفحات الphp ..والميزه الأقوى ضمن مميزات php .
لننشأ صفحة بإسم مثلا myform.html ولاحظ هنا أنها مجرد صفحة هتمل عاديه , ولنضع التالي فيها
لو لاحظت الكود السابق لوجدت أنه كود نموذج عادي يبتدأ بـ <form...< ويتنهي بـ </form> كأي وسم html ووسوم الهتمل غالبا تحوي بوسم الفتح معلومات تسمى كل معلومه "خاصيه"
في مكان tag يكون أي وسم آخر كـ form و ينتهي بنفس الأسم الذي إبتدأ به
وسم الفتح يحوي خواص قد تكون كثير او قليه بحسب ماتريده
والخاصيه بالشرح هي attribute1 ولها يكون القيمة التي قد تكون معرفه مسبقا او تكون عامه.
وقد قام الأخ "سردال" مشكوراً بشرحها تفصيلا هنا :
سردال » ما الفرق بين tag والكلمات الأخرى؟
وبعد إنشاء الصفحه myform.html نقوم بحفظها وننشأ بنفس المجلد ملف أخر بأسم مثلاً action.php ونضع التالي فيه :
إستخدمنا الداله htmlspecialchars لتنظيف المدخل الإسم من أكواد الهتمل للحمايه من أكواد الهتمل الخبيثه
واستخدمنا داله intval لتنظيف المدخل , لو كان رقما إرجعه لنا, لو كان غير هذا قام بإرجاع قيمة 0 .
الناتج سوف يكون قريب لـ
جرب بنفسك وإكتب مره إسم يحوي مثلا أكواد هتمل وإجعل مره العمر نص وليس رقم للتأكد من عمل الدوال التي شرحناها بالأعلى ...
المتغير $_POST هو عباره عن متغير سوبر , او لنقل مصفوفه يتم تخزين بها المدخلات من النماذج التي يكون فيها "الخاصيه" method="post"
كما بالمثال
لو كان النموذج يملك الخاصيه method مع القيمه get مثل
إذن نستخدم المتغير السوبر $_GET
إسم الحقل هو الاسم الذي قمنا بتعريف كل حقل في النموذج به مثل :
لاحظ
طبعا إسما الحقول يجب أن تكتبها بالانجليزيه , رغم أني لم أجرب لغات أخرى , لكن لتفادي المشاكل ..
كل ماكتبناه في الأعلى مجرد مقدمه وكل هذه الاجزاء مقدمه , أقرأ , إفهم, جرّب ..
وطبعا , لابد أن تكمل الأجزاء ..
تابع قراءة الأجزاء ...
التالي >>
<< السابق
______________
المصادر :
PHP: Dealing with Forms - Manual
- ماهي php ؟
- مالذي أستطيع فعله مع php؟
- أريد أن أبدأ مع php ماذا احتاج؟
- صفحتك الأولى في php
- أشياء مفيده أخرى
غالباً لا يخلو موقع من النماذج "forms" وهي عباره عن مجموعة حقول مختلفه تطلب من الزائر مثلا إدخال معلومات فيها , هذا هو سر تفاعلية صفحات الphp ..والميزه الأقوى ضمن مميزات php .
لننشأ صفحة بإسم مثلا myform.html ولاحظ هنا أنها مجرد صفحة هتمل عاديه , ولنضع التالي فيها
كود: تحديد الكل
<form action="action.php" method="post">
<p>إكتب إسمك: <input type="text" name="name" /></p>
<p>إكتب عمرك: <input type="text" name="age" /></p>
<p><input type="submit" value="تنفيذ" /></p>
</form>
كود: تحديد الكل
<tag attribute1="قيمة">...</tag>
وسم الفتح يحوي خواص قد تكون كثير او قليه بحسب ماتريده
والخاصيه بالشرح هي attribute1 ولها يكون القيمة التي قد تكون معرفه مسبقا او تكون عامه.
وقد قام الأخ "سردال" مشكوراً بشرحها تفصيلا هنا :
سردال » ما الفرق بين tag والكلمات الأخرى؟
وبعد إنشاء الصفحه myform.html نقوم بحفظها وننشأ بنفس المجلد ملف أخر بأسم مثلاً action.php ونضع التالي فيه :
كود: تحديد الكل
مرحباً <?php echo htmlspecialchars($_POST['name']); ?>.
عمرك هو <?php echo intval($_POST['age']); ?> سنه.
إستخدمنا الداله htmlspecialchars لتنظيف المدخل الإسم من أكواد الهتمل للحمايه من أكواد الهتمل الخبيثه
واستخدمنا داله intval لتنظيف المدخل , لو كان رقما إرجعه لنا, لو كان غير هذا قام بإرجاع قيمة 0 .
الناتج سوف يكون قريب لـ
كود: تحديد الكل
مرحباً عبدالرحمن. عمرك هو 20 سنه
المتغير $_POST هو عباره عن متغير سوبر , او لنقل مصفوفه يتم تخزين بها المدخلات من النماذج التي يكون فيها "الخاصيه" method="post"
كما بالمثال
كود: تحديد الكل
<form action="action.php" method="post">
كود: تحديد الكل
<form action="action.php" method="get">
كود: تحديد الكل
$_POST['إسم الحقل']
كود: تحديد الكل
<input type="text" name="إسم الحقل" />
طبعا إسما الحقول يجب أن تكتبها بالانجليزيه , رغم أني لم أجرب لغات أخرى , لكن لتفادي المشاكل ..
كل ماكتبناه في الأعلى مجرد مقدمه وكل هذه الاجزاء مقدمه , أقرأ , إفهم, جرّب ..
وطبعا , لابد أن تكمل الأجزاء ..
تابع قراءة الأجزاء ...
التالي >>
<< السابق
______________
المصادر :
PHP: Dealing with Forms - Manual