السلام عليكم و رحمة الله تعالي و بركاته
سنتعرف على فنكشن حماية الأرقام أو مثلا عندما نجد شخص وضع برمجية خاصه به مثلا لتدوين و كل تدوينة لديها رابط و الرابط يكون على هذا الشكل مثلا : yoursite.com/
post.php?id=1
نلاحظ ما لوم بالأحمر عندما نضيف عليه هذه العلامة
' فهذا يولد لنا ثغرة SQL INJECTION و هذا أمر سيء أو خطير جدا لدلك يجب علينا الإنتباه في البرمجية جيدا من الأخطاء و أنا سأعطيكم حلا يمكنه أن يرقع هذه الثغرة التي تكون في الروابط على هذا الشكل نهائيا و 100% بشكل عام و طبعا المبرمج يستعمل أمر GET في الملف لجلب id الموضوع أو المقال أو أيا كان و id يكون int بكمعنى أنه رقمي وليس حروف أو علامات لدلك نحن سنعطيه 2 دوال في php للحد من أن يدخل أحد الأشخاص كود خبيث على الرابط كما دكرت في الأول فهذه الدوال تقوم بقراءة الرقم فقط يعني ستختار الرقم و تعرضه حتى لو أدخل أي علامة أو كلمة أو حرف لن يقرأها فقط الأرقام، أحس أني طولت كثيرا المهم :
هذه الدوال :
1- intval
2- abs
طريقة إستعمالهم في get هكذا :
$GET = intval(abs($_GET['id']));
و توجد دالة أخرى إسمها : is_numeric
أيضا هي نفس الشيء لكن المبرمجين الخبراء سيتعمولنها في الشروط فقط لتأكد من أن القيمة رقمية.
أتمى أن أكون أفدتك ولو بنسبة 5% و لا تنسى دعاؤ بسيط جدا ♥ ^_^
أكثر...