لديك حساب بالفعل؟ دخول
دخول  سجل الأن 
مشكلة مع دالة addslashes
السلام عليكم ورحمة الله وبركاته
المشكلة عندما استخدم هذه الدالة addslashes لتخزين نصوص في حقل جدول من نوع VARCHAR يجب ان اضع علامة تنصيص فردية '' وعندما اضع تقوم هذه الدالة بوضع سلاش قبل كل علامة وبذللك لايتكم تخزينه في قاعدة البيانات وانا اريد استخدام هذه الدالة فما هو الحل؟
هذا مثال على ما اقصد :
$arr=array("'hassapp'");
$n=addslashes($arr[1]);
insert($n);//inser into table
تاريخ البداية: 7 / مايو / 2012 الساعة 3:8 اخر نشاط: 7 / مايو / 2012 الساعة 9:28 php addslashes

عند استخدام الـMysql يمكنك فى حالة اغلاق الماجيك كوتس تمرير المتغير على دالة mysql_real_escape_string اولا لكى يأمنه .. ولكن لن يأمنه بشكل كافى .. لذلك اخترعو نظام الـMysql و الـPDO ويقولو من المستحيل ان تتم عمليات خقن لقواعد البيانات وانت تستعملهما .. ودون الحاجة الى اى دول حماية
7 / مايو / 2012 الساعة 9:28

1 إجابة
عند استعمال دالة addslashes مع وجود خاصية magic_quotes مفعلة ، يكون شىء غير جيد بالمرة لان الدالة تضيف سلاش والخاصية تضيف اخر فتكون شىء كهذا '//var//' لذلك عليك غلق خاصية الماجيك كوتس واستعمال هذه الدالة
if (get_magic_quotes_gpc()) {
    function strip_array($var) {
        return is_array($var)? array_map("strip_array", $var):stripslashes($var);
    }
 
    $_POST = strip_array($_POST);
    $_SESSION = strip_array($_SESSION);
    $_GET = strip_array($_GET);
}

بواسطة: MacOS
منذ: 7 / مايو / 2012 الساعة 9:27

أنشر اجابتك

xهل تريد الاجابة عن هذا السؤال؟ من فضلك سجل دخول او اشترك لتتمكن من الاجابة