[php] كلاس sql_securty لحماية المدخلات والمخرجات

مدرج تحت قسم: أدوات
3 سبتمبر 2007

هذا الكلاس هو عبارة عن function قمت بتغيره بشكل بسيط ليصبح كلاس بسيط، وأتمني تكون بداية جيدة لي معكم.

الشرح بسيط علي كل فرع بالآنجليزي. الموقع http://www.dev-ly.com

// الكود كاملا
class sql_securty{
function check_sql($vars,$type){
// Pars 1 -> just numbric
if($type == 1){
$vars = intval($vars);
}
// Part2 -> safe from sql injection ,, and add slashe
elseif($type == 2){
if(get_magic_quotes_gpc() == 0){
$vars = addslashes(htmlspecialchars($vars));
}
}
// Parst3 -> remove any slashe
elseif($type == 3){
$vars = stripslashes($vars); } // Parst4 -> dont input HTML
elseif($type == 4){
$vars = htmlspecialchars($vars);
}
// Part5 -> remove space
elseif($type == 5){
$vars = trim($vars);
}
// Pars6 -> remove some words
elseif($type == 6){
$vars = str_replace("script","",$vars);
$vars= str_replace("body","",$vars);
$vars = str_replace("on","",$vars);
$vars= str_replace("<","&l",$vars);
$vars = str_replace(">","&",$vars);
}elseif($type == 7){
$vars = md5($vars);
}else{
$vars = $vars;
}
return $vars;
}
}

هذا كل شيء..
سلامات

للكاتب Bruce

  • Share/Bookmark

التعليقات (5) على ”[php] كلاس sql_securty لحماية المدخلات والمخرجات“

  1. شكراً لك كلاس أكثر من رائع , ولكن عندي سؤال صغير (لا أزال مبتدء ) كيف ستتحدد قيمة المتغير type ? فيما إذا كان 1 أو 2 أو ….
    ممكن مثال بسيط ؟

    تحياتي
    فراس

  2. لك جزيل الشكر اخي العزيز على الكلاس الجميل..
    سلام

  3. اخي Bruce

    لي ملاحظة ، هذه دالة واحدة فقط لماذا وضعتها في كلاس ؟؟!!

    وايضا هناك بعض المهام يجب ان نتفذ مع بعضها البعض بدون الفصل بينها ،

    مثل استخدام دالة trim مع تنقية المتغيرات النصية

    كذلك دالة md5 اعتقد من الخطأ وضعها هنا

    لانه بالامكان كتابتها md5($text)

    بدل من $sql_securty->check_sql($text, 7);

    اعتقد استخدامها مباشرة اسرع للسيرفر ،

  4. كما اسلف الاخ Pal Coder لماذا الكلاس وهي فنكشن واحدة وايضا نقطة md5

    ولى ايضا ملاحظة

    اذا كنت تريده كلاس فمدام دالة واحدة يبقي تخليها Constructor بنفس اسم الكلاس

    وهتشتغل فى php 4,5 و عند انشاء نسخة من الكلاس هتمررله القيمة وال type زي
    [php]
    $num_safe= new sql_securty($vars,1);
    [/php]

    وجزاك الله كل خير

  5. فراس
    $num_safe= new sql_securty;
    $text = $sql_securty->check_sql(’Test’, 1);
    // OutPuT => 0 لان الاختيار intval
    echo $text;
    ———————————–
    الاخوة الاعزاء الغرض ليس السرعة او ماشابه فالمبرمجين يعرفون كل هذة الدوال لكن المبتدئين يريدون شي سهل الاستخدام و مضمون ولهذا قمت به

    وبخصوص الكلاس وضعته هكذا فقط يعني ليدخل ضمنها مع انه فنكشن بسيط
    ————————————-
    وان شاء الله نقوم بالتطوير للافضل

أضف تعليقك




يمكنك استخدام الوسوم التالية في التعليق: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>


* حقول مطلوبة