ط£ظƒظˆط¯ PHP ط§ظ„طھط*ظ‚ظ‚ ظ…ظ† ط§ظ„ط*ظ‚ظ„ ظƒظ€(ط¬ط¹ظ„ظ‡ ظ…ط·ظ„ظˆط¨ - ط±ظ‚ظ…ظٹ - ط§ظٹظ…ظٹظ„ - ط±ط§ط¨ط· - ط§ط*ط¯ظ‡ظ… ظ…ط·ظ„ظˆط¨..)



بسم الله الرحمن الرحيم

كنت سابقاً قد انزلت موضوع
كود code جي كويري للتحقق من أي قيمة بداخل المربع قبل إرسال بياناته للقاعدة (كجعله مطلوب..)

لكن اليوم أريد أن أضع لكم درس مفصل عمل هذه التحققات بال PHP وليس JQuery

فالنبدأ بعد الصلاة على النبي صلى الله عليه و سلم
صليتوه عليه ؟ إذن انطلق معي

التحقق إذا كان الحقلين معاً غير مدخلين يطبع ان الحقلين مطلوبي

رمز Code:
if($filename == '' || $size == '' ) { echo "file name is required !"; echo "size is required !"; die ("" }
التحقق إذا كان حقل اسم الملف غير مدخل يطبع الحقل مطلوب

رمز Code:
if($filename == '') { echo "file name is required !"; die ("" }
التحقق إذا كان حقل الحجم غير مدخل يطبع الحقل مطلوب
رمز Code:
if($size == '') { echo "size is required !"; die ("" }
التحقق إذا كان حقل الحجم غير رقمي

رمز Code:
if (! is_numeric ($size)) { echo "size must be numeric only !"; die ("" }
التحقق إذا كان أحد الحقول مدخلة فيقوم بالتنفيذ
يعني مثلا أنا عندي 5 حقول لإدخال بها روابط مواقع
أريد أن أتحقق إذا كان أحد الحقول على الأقل (يعني حقل واحد يكون فيه قيمة على الأقل ) مدخلة ينفذ وإلا سيعتبر انه لم يتم الإدخال في أي حقل و لهذا سيعرض رسالة خطأ

رمز Code:
if($url1 == '' && $url2 == '' $url3 == '' && $url4 == '' && $url5 == '' ) { echo "You must enter at least one link !"; die ("" }
التحقق إذا كانت القيمة المدخلة ايميل او لا

رمز Code:
$email = $_POST['email']; if(eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$", $email)) { echo "Valid email address."; } else { echo "Invalid email address."; }
$_POST['email'] وهي جلب القيمة من الحقل
إذا ارت انك انت تدخل بيصير الكود code بالكامل هكذا

رمز Code:
$email = "[email protected]"; if(eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$", $email)) { echo "Valid email address."; } else { echo "Invalid email address."; }
التحقق إذا كانت القيمة المدخلة عبارة عن رابط ( لينك موقع )
رمز Code:
$links = $_POST['links']; if(!eregi("^(https?|ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$", $links)) { echo "That is Invalid URL !"; die ("" }
لكن هذا يجعل حقل الرابط مطلوب يعني لازم يكون فيه قيمة وكمان عبارة عن رابط

ملاحظة لفهم عمل : $links = $_POST['links']; راجع كود code تحقق من الايميل
---------------------

طيب لو انت حابب تعمل اذا كان فيه قيمة فقط يتحقق انه رابط اما لو مكانش فيه قيمة لا يتحقق بل يكمل البرنامج لهذا الغرض نستخدم الكود code التالي :

رمز Code:
$links = $_POST['links']; if( $links != '' ){ if(!eregi("^(https?|ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$", $links)) { echo "That is Invalid URL !"; die ("" } }
ملاحظة لفهم عمل : $links = $_POST['links']; راجع كود code تحقق من الايميل
------

طبعاً كل هذه التحققات توضع قبل جملة joomla الإدخال "insert" إلى قاعدة البيانات حتى يتم التحقق قبل إرسال البيانات إلى القاعدة

و أخيراً للتنسيق انت ممكن قبل و سم الطباعة echo""; تغلق علامة ال php و تستعمل html في التنسيق و عمل زر رجوع و في كود code الرجوع مع ابقاء بيانات الحقل كما كانت مدخلة سابقاً وهو

رمز Code:
<a href=&quot;javascript:window.location.reload()&quo t;><FONT color=#FF0000><STRONG>Go Back AND Fill in the required fields</STRONG></FONT></a>
ولا تنسى تفتح وسوم php جديدة لتغلق القوس الخاص بالشرط

كان معكم ( أبو ناهض )
المصدر
و السلام عليكم و رحمة الله













©المشاركات المنشورة تعبر عن وجهة نظر صاحبها فقط، ولا تُعبّر بأي شكل من الأشكال عن وجهة نظر إدارة المنتدى©