السلام عليكم
كيف يتعرف المتصفح على الاجهزة الكفية .
لم اجد موضوع بعد بحث كبير :con2::con2:
السلام عليكم
كيف يتعرف المتصفح على الاجهزة الكفية .
لم اجد موضوع بعد بحث كبير :con2::con2:
__________________
htaccess بكل بساطة
الشفرة الموحدة "يونِكود"
(إن من مفاسد هذه الحضارة أنها تسمي الاحتيال ذكاءً، والانحلال حرية، و"الرذيلة فناً" والاستغلال معونة) - مصطفى السباعي
وعليكم السلام
مافهمت سؤالك ؟؟
المتصفح لايمكن ابدا ان يتعرف على الجهاز الكفي
اذا كنت تقصد "كيف يتعرف الموقع على ان المتصفح الحالي هو من جهاز كفي؟"
فهذا شي مختلف
انا قبل فتره كنت احاول اجد حل لهذه الطريقه ولكن دون فائده والاسباب ان متصفحات الاجهزه الكفيه "اكثرها" لاتدعم الجافا سكريبت ولا تدعم جميع ال tags الخاصه بال html
ولكن وجدت حل بعدها بفتره بال php
"كان من الممكن لو انها تدعم " ان ننفذ امر جافاسكريبت بجلب الطول والعرض للشاشه فاذا كانت اقل من 400 اذا هذا جهاز كفي او جوال ويتم نقل الزائر الى صفحة عرض الاجهزه الكفيه
لكن من الصعب ان تضمن عملها
screen.width هو امر لجلب دقة الشاشه عن طريق الجافاسكريبتكود:<SCRIPT language="JavaScript"> if (screen.width<=400) window.location="mobile.html"; </SCRIPT>
وهذا الامر فائدته اذا كانت الشاشه عرضها اقل من 400 مثلا يتم تحويل الزائر الى صفحة mobile.html والتي لها تصميم خاص مناسب للجوال او الجهاز الكفي
"نخرج الان عن الجافا سكريبت ونعطيك الحل بال php"
ال php ممكن تعرف ان الزائر بيتصفح عن طريق الجوال او الجهازي الكفي
الامر هذا يحاول معرفة نوع المتصفح اذا كان من جهازي كفي او جوالكود PHP:
<?php
function checkWap(){
$isMobile = false;
$isBot = false;
$op = strtolower($_SERVER['HTTP_X_OPERAMINI_PHONE']);
$ua = strtolower($_SERVER['HTTP_USER_AGENT']);
$ac = strtolower($_SERVER['HTTP_ACCEPT']);
$ip = $_SERVER['REMOTE_ADDR'];
$isMobile = strpos($ac, 'application/vnd.wap.xhtml+xml') !== false
|| $op != ''
|| strpos($ua, 'sony') !== false
|| strpos($ua, 'symbian') !== false
|| strpos($ua, 'nokia') !== false
|| strpos($ua, 'samsung') !== false
|| strpos($ua, 'mobile') !== false
|| strpos($ua, 'windows ce') !== false
|| strpos($ua, 'epoc') !== false
|| strpos($ua, 'opera mini') !== false
|| strpos($ua, 'nitro') !== false
|| strpos($ua, 'j2me') !== false
|| strpos($ua, 'midp-') !== false
|| strpos($ua, 'cldc-') !== false
|| strpos($ua, 'netfront') !== false
|| strpos($ua, 'mot') !== false
|| strpos($ua, 'up.browser') !== false
|| strpos($ua, 'up.link') !== false
|| strpos($ua, 'audiovox') !== false
|| strpos($ua, 'blackberry') !== false
|| strpos($ua, 'ericsson,') !== false
|| strpos($ua, 'panasonic') !== false
|| strpos($ua, 'philips') !== false
|| strpos($ua, 'sanyo') !== false
|| strpos($ua, 'sharp') !== false
|| strpos($ua, 'sie-') !== false
|| strpos($ua, 'portalmmm') !== false
|| strpos($ua, 'blazer') !== false
|| strpos($ua, 'avantgo') !== false
|| strpos($ua, 'danger') !== false
|| strpos($ua, 'palm') !== false
|| strpos($ua, 'series60') !== false
|| strpos($ua, 'palmsource') !== false
|| strpos($ua, 'pocketpc') !== false
|| strpos($ua, 'smartphone') !== false
|| strpos($ua, 'rover') !== false
|| strpos($ua, 'ipaq') !== false
|| strpos($ua, 'au-mic,') !== false
|| strpos($ua, 'alcatel') !== false
|| strpos($ua, 'ericy') !== false
|| strpos($ua, 'up.link') !== false
|| strpos($ua, 'vodafone/') !== false
|| strpos($ua, 'wap1.') !== false
|| strpos($ua, 'wap2.') !== false;
$isBot = $ip == '66.249.65.39'
|| strpos($ua, 'googlebot') !== false
|| strpos($ua, 'mediapartners') !== false
|| strpos($ua, 'yahooysmcm') !== false
|| strpos($ua, 'baiduspider') !== false
|| strpos($ua, 'msnbot') !== false
|| strpos($ua, 'slurp') !== false
|| strpos($ua, 'ask') !== false
|| strpos($ua, 'teoma') !== false
|| strpos($ua, 'spider') !== false
|| strpos($ua, 'heritrix') !== false
|| strpos($ua, 'attentio') !== false
|| strpos($ua, 'twiceler') !== false
|| strpos($ua, 'irlbot') !== false
|| strpos($ua, 'fast crawler') !== false
|| strpos($ua, 'fastmobilecrawl') !== false
|| strpos($ua, 'jumpbot') !== false
|| strpos($ua, 'googlebot-mobile') !== false
|| strpos($ua, 'yahooseeker') !== false
|| strpos($ua, 'motionbot') !== false
|| strpos($ua, 'mediobot') !== false
|| strpos($ua, 'chtml generic') !== false
|| strpos($ua, 'nokia6230i/. fast crawler') !== false;
if($isMobile){
header('Location: http://www.site.com/wap/' . urlencode($_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']));
exit();
}
}
checkWap();
?>
وايضا يحاول معرفه ما اذا كان الزائر هو احد عناكب البحث ليتجنب تحويله
التغيير فقط يكون على السطر التالي :
غير العنوان فقط لصفحة عرض ال wap او الصفحه الخاصه بالاجهزه الكفيهكود PHP:
header('Location: http://www.site.com/wap/' . urlencode($_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']));
ما شاء الله تبارك الله الغالي محمد
عمل جميل وجهد جبار
كنت ابحص عن حل لها لتطبيقها على موقع جامعة ام القرى ، وانقذتنا بارك الله فيك ..
لكن كانت لدي فكرة وكنت أظنها ستنجح لكن لا أدري لم أجرب حتى الآن ، وهي استخدام Media types في الاستايل شيت وخصوصا النوع :
handheld Intended for handheld devices (typically small screen, monochrome, limited bandwidth).
لكن لا أدري هل تنفع أم اني فهمت الأمر بشكل خاطئ ؟
سلامي واحترامي لك
اخوك
وحيد .
__________________
كل مالا يعطى يضيع
مشكور اخي العزيز وفقكم الله .
افضل حل هو الاعتماد على دقة الشاشة , بخصوص 'HTTP_USER_AGENT' كل يوم جهاز جديد و نوع جديد .
__________________
htaccess بكل بساطة
الشفرة الموحدة "يونِكود"
(إن من مفاسد هذه الحضارة أنها تسمي الاحتيال ذكاءً، والانحلال حرية، و"الرذيلة فناً" والاستغلال معونة) - مصطفى السباعي
ممتاز mohdesign بارك الله فيك![]()
__________________
Keepondev | مدونه شديد التخصص فى الجافاسكربت
جافاسكربت الموجهه بالكائنات | أنماط تصميم جافاسكربت
رائع اخي محمد
وهناك ايضاً كود قديم
شرحه هناكود:<script> if (navigator.userAgent.indexOf("PalmSource") != -1) {window.location='http://www.xxxxx.com/ppc'} if (navigator.userAgent.indexOf("Windows CE") != -1) {window.location='http://www.xxxxxx.com/ppc'} </script>
http://www.swalif.net/softs/swalif54/softs122144/
__________________
مصمم ومطور مواقع انترنت ..
email: Mohamed@almangour.net
website : http://www.dezo.net