اختر لونك:
وَقُلِ اعْمَلُوا فَسَيَرَى اللَّهُ عَمَلَكُمْ وَرَسُولُهُ وَالْمُؤْمِنُونَ ۖ وَسَتُرَدُّونَ إِلَىٰ عَالِمِ الْغَيْبِ وَالشَّهَادَةِ فَيُنَبِّئُكُم بِمَا كُنتُمْ تَعْمَلُونَ [ التوبة : ( 105 )] كلمة الإدارة

يرجى إختيار القسم المناسب قبل النشر وسيعاقب المخالف بإنذار أول مرة وسيتم حظره إذا تكرر ذلك كلمة الإدارة

يُمنع كتابة مواضيع السحر والشعوذة والروحانيات والابراج بكافة الأشكال والمخالف سيعاقب بحظر مؤقت وإذا تكرر سيكون حظر دائم تنبيه هام جداً



أضف رد جديد
 
LinkBack أدوات الموضوع انواع عرض الموضوع

قديم 09-04-2019, 11:07 AM   #1
تاريخ التسجيل: Feb 2019
المشاركات: 1,010
التقييم: 10
تاريخ التسجيل: Feb 2019
المشاركات: 1,010
التقييم: 10
افتراضي الكود الخاص بتضمين الصفحات

هناك دوال أخرى للتضمين كـ include_once أي تضمين الملف مرة واحدة فقط إذا كان هناك نسخة أخرى مضمَّنة من نفس الملف فإستخدام include تسبب أخطاء التضمين المتتالي لنفس الملف أي الدخول في حلقة مغلقة لعملية تضمين الملف إذا تم تضمين الملف داخل نفسه أو شئ من هذا القبيل , ودالة require تعني أن هذا الملف مطلوب للإستمرار في معالجة باقي الكود وإلا لا يتم تنفيذ باقي الكود ويتم الخروج بعكس دالة include فيصدر خطأ عدم تضمين الملف ويتم معالجة باقي الكود , وهناك أيضاً دالة require_once على غرار دالة include_once .


ولكن قيم متغيرات الروابط كما نعلم يمكن تغييرها من خلال الرابط مما يجعل الرابط عرضة لتضمين ملفات خارجية وهو ما يعرف بثغرة RFI الكود الخاص بتضمين الصفحات ولكن في نسخ php الحالية فالضبط الإفتراضي يمنع تضمين ملف خارجي من خادم أخر , وهناك أيضاً ثغرة تعرف بـ LFI وهي الوصول لتشغيل ملف ما على جهاز الخادم للحصول على بيانات ما أو تعديل ملف ما ومن خلال هذه الثغرة يمكن التحكم الكامل بجهاز الخادم , ولتلاشي هذه الثغرة إما أن تقوم بفلترة القيم التي يتم جلبها من الروابط أو تضمين ملفات بالإعتماد على قيمة متغير في الرابط وليكن المعرف id وعلى هذا تصبح الروابط السابقة على النحو التالي :

<div class="header"> <a href="index-page.php"> الرئيسية </a> <a href="index-page.php?id=1"> عن الموقع </a> <a href="index-page.php?id=2"> الأخبار </a> <a href="index-page.php?id=3"> جديد الموقع </a> <a href="index-page.php?id=4"> للإتصال بنا </a></div>
والكود الخاص بتضمين الصفحات سيكون على الشكل التالي :

<div class="content"> <?php if(isset($_GET['id'])) { switch($_GET['id']) { case '1': include('about-site.php'); break; case '2': include('news.php'); break; case '3': include('new.php'); break; case '4': include('contactus.php'); break; default: echo '<h1 style="color:#F00;"> معرف صفحة خاطئ </h1>'; } } else { echo '<h1> محتوى الصفحة الرئيسية </h1>'; } ?></div>
وهذا رابط تنزيل الملف بعد التعديلات :
site3.zip


ومن ملاحظتنا نجد أن اسم الصفحة أو الـ title دائماً هو "الصفحة الرئيسية" , أترك لكم هذا لتغييره ليعبر عن محتوى كل صفحة بنفس الطريقة السابقة

ملاحظة : توجد طرق أخرى لعملية تضمين الملفات منها أن يوضع راس الصفحة في صفحة منفصلة وأيضاً تززيل الصفحة وقائمة الروابط كلاً في صفحة منفصلة وتتم عملية تضمين هذه الصفحات ضمن صفحات الموقع وفي حال التعديل على أي من هذه الصفحات هو بمثابة التعديل على الموقع ككل .

ارسال المتغيرات عبر النماذج :
- النماذج في HTML هي وحدات لجلب البيانات من المستخدمين وكأمثلة عليها : عمليات تسجيل الدخول و تسجيل مستخدم جديد وتحتوي على العديد من عناصر الإدخال والإختيار على حسب الحاجة .
- أهم خصائص وسم النموذج form هي خاصية الـ action وقيمته تكون مسار ملف معالجة البيانات المرسلة من النموذج والخاصية method وهي نوع الإرسال إما POST أو GET وغالباً ما تستخدم الطريقة POST والفرق بينها وبن GET هي أن الطريقة POST تستخدم مع البيانات كبيرة الحجم .
- يتم ارسال التعرف على عناصر النموذج المرسلة من خلال خاصية الاسم name
ولجلب البيانات المرسلة في ملف المعالجة نستخدم المتغير المعرف مسبقاً في php وهو $_POST وهو عبارة عن مصفوفة تحتوي على البيانات المرسلة من النموذج .
والتالي نموذج به اسم المستخدم وكلمة المرور وذر لإرسال البيانات :

<form action="submit.php" method="POST"> <label>اسم المستخدم :</label> <input type="text" name="username"><br> <label>كلمة المرور : </label> <input type="password" name="password"><br> <input type="submit" value="أدخل القيم"></form>
- ملف معالجة البيانات هو submit.php ونوع الإرسال هو POST
- الوسم input هو أحد الوسوم الخاصة بوسم الـنموذج ولا يحتاج لوسم إغلاق ومن خواص هذا الوسم النوع type وهو نوع الحقل والخاصية name وهي اسم الحقل والذي من خلاله نستطيع جلب البيانات لهذا الحقل من ملف المعالجة .
- قمنا بعمل حقلين أحدهما من النوع text أي نص والأخر نوعه password أي حقل كلمة مرور
- والحقل الأخير من نوع submit أي ذر إرسال البيانات لملف المعالجة وبه الخاصية value وهي القيمة التي تظهر على الذر ويمكن إستخدام هذه الخاصية للحقول السابقة لوضع قيم إفتراضية للحقول .

-داخل ملف المعالجة submit.php سنضع الكود التالي لطباعة القيم الموجودة في المصفوفة $_POST :

<?phpforeach($_POST as $key=>$value){ echo $key.': '.$value.'<br>';}?>

الفارس غير متواجد حالياً   اقتباس
أضف رد جديد

الكلمات الدلالية (Tags)
منتديات رحيل, رحيل, شبكة رحيل, r7il, r7il.com


الذين يشاهدون محتوى الموضوع الآن : 1 ( الأعضاء 0 والزوار 1)
 

تعليمات المشاركة
لا تستطيع إضافة مواضيع جديدة
لا تستطيع الرد على المواضيع
لا تستطيع إرفاق ملفات
لا تستطيع تعديل مشاركاتك

BB code is متاحة
كود [IMG] متاحة
كود HTML معطلة
Trackbacks are متاحة
Pingbacks are متاحة
Refbacks are متاحة


المواضيع المتشابهه
الموضوع كاتب الموضوع المنتدى مشاركات آخر مشاركة
نصائح تساعدك علي اختيار اسم النطاق raheel قسم تطوير المواقع ومحركات البحث والسيو Seo والووردبريس WordPress 0 11-04-2019 06:58 PM
كيفية تفعيل الصفحات المسرعة amp لموقع ووردبريس raheel قسم تطوير المواقع ومحركات البحث والسيو Seo والووردبريس WordPress 0 01-04-2019 03:39 PM
كيفية زيادة سرعة ووردبريس الخاص بك raheel قسم تطوير المواقع ومحركات البحث والسيو Seo والووردبريس WordPress 0 27-03-2019 07:07 PM
طريقة تعديل الكود الخاص بملف من إدارة الملفات أو file manager ؟ raheel قسم تطوير المواقع ومحركات البحث والسيو Seo والووردبريس WordPress 0 25-03-2019 03:52 PM
طرق تحسين الترتيب الخاص بموقعك raheel قسم تطوير المواقع ومحركات البحث والسيو Seo والووردبريس WordPress 0 13-03-2019 02:54 PM


الساعة الآن 12:06 PM

 


Content Relevant URLs by vBSEO ©2010, Crawlability, Inc.