بسم الله الرحمن الرحيم
بعد عملنا لنموذج المعلومات الشخصيه ( اذا لم تستطع عمله , اضغط هنا لتحميل نموذج المعلومات الشخصيه) نريد ان نرسل هذه البيانات الى صفحه اخرى , لنقوم بمشاهدة هذه البيانات او معالجتها او اي شي اخر , فكيف يتم فعل ذلك , كما تعلمنا سابقا , يمكننا فعل ذلك عن طريق تحديد الصفحه المراد الذهاب اليها في ( FORM ) , لاحظ المثال التالي , ( في مثالنا سوف نذهب الى الصفحه view.php ) :
هذا المثال مدمج مع كود PHP
هذا المثال كود HTML فقط
لاحظ انه هنا نقوم بالذهاب الى صفحه اخرى , ولكن اذا اردنا الذهاب الى الصفحه نفسها
(طريقة اخرى) قم بكتابة نفس الصفحه , او العباره $PHP_SELF , وهي تؤدي نفس الغرض ( اذا كان نفس الصفحه ) وسوف اشرح لك هذه العباره لاحقا.
التحقق من ان جميع البيانات ممتلئه :
الان لنأتي الى متعة عمل لغة PHP , في نموذجنا , نريد ان نتحقق اذا كان المستخدم قد قام بكتابة جميع البيانات المطلوبه ( كلها ) , اذن انشئ صفحه PHP اسمها view.php , ولنقم بفعل ذلك خطوة خطوة , اولا نريد ان نتحقق من ان المستخدم قام بكتابة اسمه الاول واسم العائله والبريد الالكتروني اكتب في محرر الاكواد التالي :
لو قمت بالملاحظه , فإننا نستخدم اسماء المتغيرات التي انشئناها في النموذج , ( fname & lname & email ) , اليس ذلك صحيحا ؟ لنكمل التحقق من النموذج
الان قم بتشغيل ملف النموذج , ولا تقم بكتابة اي شي , فقط اضغط على زر ( ارسال ) , وسوف تجد ان الصفحه تكتب ما يلي :
قد تقول لنفسك , هناك شيئ غير منطقي , وهو اننا طبعنا العباره ( الرجوع الى الخلف ) اكثر من مره ( لكل نوع لم يتم تعبئته ) اليس ذلك صحيحا , ؟ اذن كيف نتخلص من ذلك ؟ نتخلص منه عن طريق العباره exit التي وسبق ان قمنا بمعرفتها في الدرس الدرس السابع: متفرقات عن لغة PHP , نكتب العباره exit , كالتالي :
الان عندما ينسى المستخدم , سوف يأتي له اي نوع قام بنسيانه فقط , واحدا تلو الاخر , فلو نسي المستخدم كتابة الاسم الاول والاسم الثاني , سيظهر له انه نسي الاسم الاول فقط , هذا ما اعني به ( واحدا تلو الاخر ) .
طباعة البيانات الى المتصفح :
الان , نريد ان نقوم بطباعة ما اختاره المستخدم وعرضه على الشاشه , نفعل ذلك بالطريقه التاليه , افتح محرر الاكواد ( اكمل على الكود السابق ) واكتب التالي :
قد تسأل التالي : لماذا لم اضع IF شرطيه ( شرطها اذا قام بتعبئة جميع الانواع ) قم بكتابة هذا الكود بداخلها , والجواب هو , لانه استخدمنا اللعباره exit , فلو لم تملئ جميع الحقول سوف يقوم بالخروج من كامل الكود , ولن يقوم بالنظر الى كود الطباعه . ولكن اذا اردت يمكنك استخدام عباره IF يوجد بها الشرط التالي , وفي حالة تحققه يقوم بطباعة جميع محتويات المتغيرات التي قمنا بكتابتها , الشرط هو :
وسوف يقوم بفعل نفس الشيئ , وبيدك الاختيار
هناك ملاحظه اخرى , انا متأكد انك قمت بملاحظتها , وهي ان المتغير SKILL , لم يقم بطباعة جميع المهارات التي قمت بإختيارها ( يمكنك اختيار اكثر من مهاره ) , لماذا ؟ الجواب هو لانه يجب ان يكون مصفوفه , وسوف نتطرق للمصفوفات لاحقا وسوف تقوم بمعرفتها بالكامل , ولكن لا تتعجل , فالطريق امامنا طويل جدا
قم بتحميل هذا التطبيق كاملا من هنا
مثال تطبيقي ( عمل نموذج تسجيل دخول ) :
هل قمت بعمل ما فعلناه سابقا ؟ هل قمت بإستيعابه ؟ اذن لنقم بعمل نموذج تسجيل دخول , مثل الدخول الى بريدك الالكتروني , او لوحة التحكم الخاصه بك في احد المنتديات , قم بعمل نموذج لتسجيل الدخول كالتالي :
لا تنسى كيفية كتابة حقل كلمة المرور راجع الدرس التاسع: انواع النماذج وطريقة كتابتها
الان لننظر الى ملف PHP ولنرى كيفية التأكد من صحة كلمة المرور ( لنفرض ان اسم المستخدم هو الدعم العربى ) و ( كلمة المرور هي 123 ) افتح محرر الاكواد واكتب التالي :
لاحظ ان اسماء المتغيرات في النموذج هي ( user ) و ( pass )
- متطلبات قبل البدأ :
- مراجعة الدرس السابق , مع محاولة فعل عدة تطبيقات بإستخدام انواع النماذج
- مراجعة الدرس السابق , مع محاولة فعل عدة تطبيقات بإستخدام انواع النماذج
- اهداف الدرس:
- التحقق من ان جميع البيانات ممتلئه
- طباعة البيانات الى المتصفح
- مثال تطبيقي ( عمل نموذج تسجيل دخول )
بعد عملنا لنموذج المعلومات الشخصيه ( اذا لم تستطع عمله , اضغط هنا لتحميل نموذج المعلومات الشخصيه) نريد ان نرسل هذه البيانات الى صفحه اخرى , لنقوم بمشاهدة هذه البيانات او معالجتها او اي شي اخر , فكيف يتم فعل ذلك , كما تعلمنا سابقا , يمكننا فعل ذلك عن طريق تحديد الصفحه المراد الذهاب اليها في ( FORM ) , لاحظ المثال التالي , ( في مثالنا سوف نذهب الى الصفحه view.php ) :
هذا المثال مدمج مع كود PHP
هذا المثال كود HTML فقط
لاحظ انه هنا نقوم بالذهاب الى صفحه اخرى , ولكن اذا اردنا الذهاب الى الصفحه نفسها
(طريقة اخرى) قم بكتابة نفس الصفحه , او العباره $PHP_SELF , وهي تؤدي نفس الغرض ( اذا كان نفس الصفحه ) وسوف اشرح لك هذه العباره لاحقا.
التحقق من ان جميع البيانات ممتلئه :
الان لنأتي الى متعة عمل لغة PHP , في نموذجنا , نريد ان نتحقق اذا كان المستخدم قد قام بكتابة جميع البيانات المطلوبه ( كلها ) , اذن انشئ صفحه PHP اسمها view.php , ولنقم بفعل ذلك خطوة خطوة , اولا نريد ان نتحقق من ان المستخدم قام بكتابة اسمه الاول واسم العائله والبريد الالكتروني اكتب في محرر الاكواد التالي :
PHP كود :
<?php
if (!$fname)
{
echo "لم تقم بكتابة اسمك الأول";
?>
<br />
<a href="lesson9">الرجوع الى الخلف</a>
<?
}
if (!$lname)
{
echo "لم تقم بكتابة اسم العائلة";
?>
<br />
<a href="lesson9">الرجوع الى الخلف</a>
<?
}
if (!$email)
{
echo "لم تقم بكتابة البريد";
?>
<br />
<a href="lesson9.html">الرجوع الى الخلف</a>
<?
}
لو قمت بالملاحظه , فإننا نستخدم اسماء المتغيرات التي انشئناها في النموذج , ( fname & lname & email ) , اليس ذلك صحيحا ؟ لنكمل التحقق من النموذج
PHP كود :
if (!$sex)
{
echo "لم تقم بإختيار الجنس";
?>
<br />
<a href="lesson9.html">الرجوع الى الخلف</a><br />
<?
}
if (!$read && !$write && !$draw && !$prog)
{
echo "لم تقم بإختيار هواية";
?>
<br />
<a href="lesson9.html">الرجوع الى الخلف</a><br />
<?
}
if (!$lang)
{
echo "لم تقم بإختيار اللغة";
?>
<br />
<a href="lesson9.html">الرجوع الى الخلف</a><br />
<?
}
if (!$skill)
{
echo "لم تقم بإختيار المهارات";
?>
<br />
<a href="lesson9.html">الرجوع الى الخلف</a><br />
<?
}
if (!$info)
{
echo "لم تقم بكتابة معلومات عن نفسك";
?>
<br />
<a href="lesson9.html">الرجوع الى الخلف</a><br />
<?
}
?>
الان قم بتشغيل ملف النموذج , ولا تقم بكتابة اي شي , فقط اضغط على زر ( ارسال ) , وسوف تجد ان الصفحه تكتب ما يلي :
قد تقول لنفسك , هناك شيئ غير منطقي , وهو اننا طبعنا العباره ( الرجوع الى الخلف ) اكثر من مره ( لكل نوع لم يتم تعبئته ) اليس ذلك صحيحا , ؟ اذن كيف نتخلص من ذلك ؟ نتخلص منه عن طريق العباره exit التي وسبق ان قمنا بمعرفتها في الدرس الدرس السابع: متفرقات عن لغة PHP , نكتب العباره exit , كالتالي :
PHP كود :
<?php
if (!$fname)
{
echo "لم تقم بكتابة اسمك الأول";
?>
<br />
<a href="lesson9">الرجوع الى الخلف</a>
<?
exit;
}
if (!$lname)
{
echo "لم تقم بكتابة اسم العائلة";
?>
<br />
<a href="lesson9">الرجوع الى الخلف</a>
<?
exit;
}
if (!$email)
{
echo "لم تقم بكتابة البريد";
?>
<br />
<a href="lesson9.html">الرجوع الى الخلف</a>
<?
exit;
}
الان عندما ينسى المستخدم , سوف يأتي له اي نوع قام بنسيانه فقط , واحدا تلو الاخر , فلو نسي المستخدم كتابة الاسم الاول والاسم الثاني , سيظهر له انه نسي الاسم الاول فقط , هذا ما اعني به ( واحدا تلو الاخر ) .
طباعة البيانات الى المتصفح :
الان , نريد ان نقوم بطباعة ما اختاره المستخدم وعرضه على الشاشه , نفعل ذلك بالطريقه التاليه , افتح محرر الاكواد ( اكمل على الكود السابق ) واكتب التالي :
PHP كود :
echo "لم تقم بكتابة معلومات عن نفسك";
?>
<br />
<a href="lesson9.html">الرجوع الى الخلف</a><br />
<?
exit;
}
echo "<html dir=\"rtl\">";
echo "<head>";
echo "<title> نتيجة معلوماتك الشخصية</title>";
echo "</head>";
echo "<body>";
echo "الأسم هو: ".$fname." ".$lname;
echo "<br /> البريد الألكترونى هو:" .$email;
echo "<br /> الجنس هو:".$sex;
if ($read)
echo "<br /> من هواياتك:".$read;
if ($write)
echo "<br /> من هواياتك:".$write;
if ($draw)
echo "<br /> من هواياتك:".$draw;
if ($prog)
echo "<br /> من هواياتك:".$prog;
echo "<br /> لغتك المفضلة هى: ".$lang;
echo "<br />مهاراتك هى: ".$skill;
echo "<br />معلومات عن نفسك: ".$info
?>
قد تسأل التالي : لماذا لم اضع IF شرطيه ( شرطها اذا قام بتعبئة جميع الانواع ) قم بكتابة هذا الكود بداخلها , والجواب هو , لانه استخدمنا اللعباره exit , فلو لم تملئ جميع الحقول سوف يقوم بالخروج من كامل الكود , ولن يقوم بالنظر الى كود الطباعه . ولكن اذا اردت يمكنك استخدام عباره IF يوجد بها الشرط التالي , وفي حالة تحققه يقوم بطباعة جميع محتويات المتغيرات التي قمنا بكتابتها , الشرط هو :
PHP كود :
if( $fname && $lname && $email && $sex && $lang && $skill && $info && ( $read || $write || $draw || $prog ) )
وسوف يقوم بفعل نفس الشيئ , وبيدك الاختيار
هناك ملاحظه اخرى , انا متأكد انك قمت بملاحظتها , وهي ان المتغير SKILL , لم يقم بطباعة جميع المهارات التي قمت بإختيارها ( يمكنك اختيار اكثر من مهاره ) , لماذا ؟ الجواب هو لانه يجب ان يكون مصفوفه , وسوف نتطرق للمصفوفات لاحقا وسوف تقوم بمعرفتها بالكامل , ولكن لا تتعجل , فالطريق امامنا طويل جدا
قم بتحميل هذا التطبيق كاملا من هنا
مثال تطبيقي ( عمل نموذج تسجيل دخول ) :
هل قمت بعمل ما فعلناه سابقا ؟ هل قمت بإستيعابه ؟ اذن لنقم بعمل نموذج تسجيل دخول , مثل الدخول الى بريدك الالكتروني , او لوحة التحكم الخاصه بك في احد المنتديات , قم بعمل نموذج لتسجيل الدخول كالتالي :
لا تنسى كيفية كتابة حقل كلمة المرور راجع الدرس التاسع: انواع النماذج وطريقة كتابتها
الان لننظر الى ملف PHP ولنرى كيفية التأكد من صحة كلمة المرور ( لنفرض ان اسم المستخدم هو الدعم العربى ) و ( كلمة المرور هي 123 ) افتح محرر الاكواد واكتب التالي :
PHP كود :
<?php
$def_user ="الدعم العربى"; //اسك المستخدم
$def_pass ="123"; // كلمة المرور
//السطر التالى معناه اذا نسى المستخدم احد الحقول
if (!$user || !$pass)
{
echo "الرجاء تعبئة جميع الحقول";
}
//السطر التالى معناه اذا ادخل المستخدم جميع الحقوق
if ($user && $pass)
{
//اذا كان بيانات تسجيل الدخول صحيحة
if ($user == $def_user && $pass == $def_pass)
{
echo "اهلا بك عزيز ".$user;
}
//السطر التالى اذا ادخل المستخدم كلمة مرور او اسم مستخدم خطأ
else
{
echo "الرجاء التأكد من صحة البيانات";
}
}
else
{
echo "الرجاء تعبئة جميع الحقول";
}
?>
لاحظ ان اسماء المتغيرات في النموذج هي ( user ) و ( pass )
-
- سؤال على الدرس :
- قم بعمل نموذج تسجيل مستخدم جديد , سهل جدا فقط قم بالتفكير قليلا ويمكن عمله , لا تنسى انه يجب على المستخدم كتابة كلمة المرور مرتان للتأكد من صحتها , ولا تنسى ان تقوم بالتحقق من ان جميع البيانات المدخله كامله , واترك الخيال الفكري في هذا النموذج لك ( مساعده : pass1 و pass2 في النموذج )
- قم بعمل نموذج تسجيل مستخدم جديد , سهل جدا فقط قم بالتفكير قليلا ويمكن عمله , لا تنسى انه يجب على المستخدم كتابة كلمة المرور مرتان للتأكد من صحتها , ولا تنسى ان تقوم بالتحقق من ان جميع البيانات المدخله كامله , واترك الخيال الفكري في هذا النموذج لك ( مساعده : pass1 و pass2 في النموذج )
- الـــدرس الــقادم :
- سوف نتعلم في الدرس القادم الدوال , وهي مفيده جدا جدا , سوف نرى كيفية كتابتها وكيفية استخدامها , ونعمل تطبيقات لها
- سوف نتعلم في الدرس القادم الدوال , وهي مفيده جدا جدا , سوف نرى كيفية كتابتها وكيفية استخدامها , ونعمل تطبيقات لها