سؤال

وأنا باستخدام عقيدة ORM لفب وزند MVC. لدي قاعدة بيانات ماي. عندما تضاف إلى قاعدة البيانات هو الهروب العملات. وبعبارة أخرى عندما أقوم بإدخال

<input name="customer_name" value="Test'ed user"> ...

وإلى مستواي، وتعيين إلى كائن عقيدة وحفظها.

وعندما أنظر إلى قاعدة البيانات من خلال سطر الأوامر الخلية أحصل

Test\'ed user

هل هناك طريقة لتعطيل هذا أو لا بد لي من الدعوة stripslashes() على كل متغير؟

هل كانت مفيدة؟

المحلول

والتحقق من وجود magic_quotes_gpc يتم تمكين، إما من خلال النظر في ملف php.ini أو تشغيل get_magic_quotes_gpc().

إذا كان لديك الوصول إلى ملف php.ini، ثم إيقاف تشغيله. وإلا فإنك سوف تحتاج إلى إزالة مائلة في البرامج النصية باستخدام stripslashes().

نصائح أخرى

ويمكنك تجنب الطاعون magic_quotes_gpc تماما بإضافة شيء من هذا القبيل إلى أعلى صفحاتك:

if(get_magic_quotes_gpc()) {
    if(!function_exists('stripishlashes_all')) {
        function stripslashes_all(&$data) {
            foreach($data as &$_value) {
                if(is_array($_value)) {
                    stripslashes_all($_value);
                }
                else {
                    $_value = stripslashes($_value);
                }
            }
        }
    }
    stripslashes_all($_REQUEST);
}

ومفيد جدا عند تشغيل التعليمات البرمجية في الخادم لم يكن لديك سيطرة كاملة على، أو إذا كنت تخطط لتوزيعه.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top