الخطوط المائلة العكسية إضافية يتم إضافتها في PHP
سؤال
وبي <الفرعية> كربي الفرعي> استضافة المواقع على الشبكة فعل بعض التحسينات في اليوم الآخر، وقد ذهب بعض الإعدادات منحرف، لأن النظر في ويكي شركتنا (ميدياويكي)، يجري هرب كل الاقتباس مع الخطوط المائلة العكسية. انها ليست حتى مجرد بيانات التي نشرها (أي: المواد) التي تتأثر، ولكن أيضا النص ميدياويكي القياسية. على سبيل المثال:
<اقتباس فقرة>وأنت \ 'لقد اتبعت رابط إلى صفحة فليس \' ر موجودة حتى الآن. لإنشاء هذه الصفحة ابدأ الكتابة في المربع أدناه (انظر صفحة المساعدة لمزيد من المعلومات). إذا كنت هنا عن طريق الخطأ، فقط انقر على المتصفح \ 'ق \' \ '\' مرة أخرى \ '\' \ 'زر.
اقتباس فقرة> وكان أول شيء فعلته تعطيل magic_quotes_gpc
وmagic_quotes_runtime
باستخدام ملف .htaccess
، ولكن هذا لا تزال تحدث. بلدي php_info()
تقارير هذا:
Setting Local Value Master Value
magic_quotes_gpc Off On
magic_quotes_runtime Off On
magic_quotes_sybase Off Off
وأي أفكار؟
المحلول
إذا تم تعيين الأعلام PHP مع php_admin_flag
/ php_admin_value
، لا يمكنك تغييره من ملف .htaccess
. وهذا يسبب لي بعض الصداع قبل. إما تعطيله في php.ini
أو التراجع نقلت سحرية في وقت التشغيل:
http://talks.php.net/show/php-best-practices/ 26
نصائح أخرى
وقد ترغب في التأكد من أن لم تلف البيانات في DB الخاص بك. لو كنت addslash () جي البيانات الخاصة بك عندما، دون علم لك، magic_quotes كان قيد التشغيل، ثم تريد ان تكون البيانات انقر نقرا مزدوجا slashifying الذهاب إلى DB الخاص بك.
وستحتاج لحملهم على تغيير قيمة الرئيسي، أو التعامل معها بنفسك. أنا لا أعتقد أنك يمكن أن يحدد magic_quotes_gpc()
في وقت لغلوبالس الفائقة. (وضع ذلك في وقت التشغيل سترفع أشياء مثل قاعدة البيانات / الملفات، ولكن ليس غلوبالس)
if (ini_get('magic_quotes_gpc') ) {
foreach($_GET as $key=>$value) {
$_GET[$key] = stripslashes($value);
}
} // etc...
وربما شيء آخر يدعو set_magic_quotes_runtime ().
وأنا استخدم stripslases () لإزالة مائلة عند عرض.
ولقد حاولت الاتصال بك <الفرعية> كربي الفرعي> المضيف وتسجيل خطأ؟ وربما كنت لست الوحيد تتأثر إذا كنت على استضافة مشتركة.