الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

فلتر لإدخالات المستخدم ولكن لا يعمل جيداً

بدأه أبو محمد اللحياني في 21 سبتمبر 2008 · 3 رد · 615 مشاهدة · في منتدى تطوير المواقع بـ PHP
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

إذا سمحت للمستخدمين للموقع بتنسيقات html فلا بد من الاحتياط لحماية الموقع .

class.inputfilter.php

وظيفته حذف وإزالة كل Tag وكل خاصية غير مرغوب بها ممكن تحددها وتخصصها :

	var $tagBlacklist = array('applet', 'bgsound', 'base', 'basefont', 'embed', 'frame', 'frameset', 'iframe', 'ilayer', 'layer', 'object', 'script', 'xml');
	var $attrBlacklist = array('action', 'background', 'codebase', 'dynsrc', 'lowsrc');  // also will strip ALL event handlers

ولكن عند التطبيق لا يعمل بل يحذف جميع التنسيقات ليخرج لنا نص صافي حتى من بدايات الأسطر .

فهل من حل لهذه المشكلة .

أو هناك بديل مقترح ومجرب .

class.inputfilter.rar

ولو وافيت ربك دون ذنب *** وناقشك الحساب إذاً هلكتا

ولم يظلمك في عملٍ ولكن *** عسير أن تقوم بما حملتا

#2

هناك طريقه سهله بإستخدام strip_tags

تقوم هذه داله بمسح جميع اوسمة هتمل , وبإمكانك ايضا السماح ببعضها

// Allow <p> and <a>
echo strip_tags($text, '<p><a>');

http://www.php.net/manual/en/function.strip-tags.php

#3

ahmad123

جزاك الله خيراً على الإفادة .

ولكن هل هناك دالة عكس هذه ، فأريد السماح بكل Tag html وأريد حجب بعضها ، كما مر معك في مشاركتي الأولى .

	var $tagBlacklist = array('applet', 'bgsound', 'base', 'basefont', 'embed', 'frame', 'frameset', 'iframe', 'ilayer', 'layer', 'object', 'script', 'xml');
	var $attrBlacklist = array('action', 'background', 'codebase', 'dynsrc', 'lowsrc');

ولو وافيت ربك دون ذنب *** وناقشك الحساب إذاً هلكتا

ولم يظلمك في عملٍ ولكن *** عسير أن تقوم بما حملتا

#4

الاوسمه المهمه التي يجب سماح بها هي فقط التي تهم مستخدم .. storng or b , p,i,u,etc

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…