سؤال

أنا أستخدم get_browser() وظيفة في محاولة لتحذير الأشخاص الذين لا يدعمون متصفحهم جافا سكريبت. في الواقع أنا أستخدمه لإخبارهم أنهم يمكنهم استخدام أجزاء معينة من تطبيق ويب أنا أبني. لقد قررت استخدام جافا سكريبت بشكل صحيح لأنني تعبت من الاستماع إلى المطورين الخائفون من استخدامه ولم أر إمكانات كبيرة باللغة. أنا digress، ها هو الخطأ.

Bearcap Ini توجيه عدم تعيين

الآن أود أن أتصور هذا يعني أنني بحاجة إلى تعيين شيء php.ini. هل يمكن لشخص أن يعطيني بعض الاتجاهات على هذا؟

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

المحلول

لا أعتقد أن هذا هو الحل "الأفضل" للكشف عنه هو المستعرض يدعم ما تحتاجه لموقع الويب الخاص بك:

  • بادئ ذي بدء، يمكن للمتصفحات الكذب - يمكنهم إرسال ما تريده User-Agent
    • وحتى إذا كان هناك إصدار معين من الدعم يجب أن يدعم ما تحتاجه، لا يزال بإمكان جافا سكريبت معطلا.
  • ثانيا، هناك طريقة "مناسبة" للكشف عن المستعرض الذي يمكن أن يفعله أم لا، عندما يتعلق الأمر بجوار جافا سكريبت.

في النقطة الثانية، يجب عليك اختبار ما إذا كان المتصفح يدعم بالفعل ما تحتاجه - وليس الاعتماد على قائمة مثل BrowardCap One.


لا يزال، للإجابة على سؤالك حول browscap : هناك ملاحظة في الجزء السفلي من الصفحة اليدوية ل get_browser التي يقول (اقتباس) :

ملحوظة: من أجل هذا للعمل، الخاص بك browscap يجب الإشارة إعداد التكوين في PHP.INI إلى الموقع الصحيح لل browscap.iniملف على نظامك. browscap.ini لا يتم تجميعها مع PHP، ولكن قد تجد حتى الآن » php_browscap.ini ملف هنا.
في حين browscap.ini يحتوي على معلومات حول العديد من المتصفحات، تعتمد على تحديثات المستخدم للحفاظ على قاعدة البيانات الحالية. تنسيق الملف واضح إلى حد ما.

لذلك، يجب عليك:

  • قم بتنزيل ملف Browscap،
  • وتعيين browscap التوجيه في الخاص بك php.ini ملف، لذلك يشير إلى الملف الذي قمت بتنزيله.

نصائح أخرى

أعرف أن هذا الموضوع قديم، ولكن يمكنك استخدام شيء مثل:

<noscript>JavaScript must be enabled</noscript>

لعرض إذا لم يتم تمكين جافا سكريبت.

يمكنك التحقق من المتصفح باستخدام فئة المتصفح تنزيلها من جيثب

إعدادات

      include(/your-path/Browser.php);
$browser = new Browser();
    if( $browser->getBrowser() == Browser::BROWSER_IE && $browser->getVersion() >= 8 ) 
        {
            echo "Your browser is Internet explorer version 8";                                                                                                                                    
    }

هناك خطأ في PHP الذي يمكن أن يؤدي أيضا إلى هذا الخطأ عندما تكون المشكلة الحقيقية هي أن خادم الويب لا يمكن قراءة ملف Browardcap (على سبيل المثال، إذا كان مملويا من الجذر بدلا من بيانات WWW-Data). يرى https://bugs.php.net/bug.php؟id=74501.

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