PDA

View Full Version : محدود کردن مشاهده ی سایت به یک مرورگر خاص



aminsharifloo
دوشنبه 15 شهریور 1389, 13:21 عصر
با سلام
می خواستم بدونم کدی هست که به واسطه اون ما تو سایتمون بخواییم کاربرا برا دیدن سایت فقط از یک مرورگر خاصی استفاده کنن؟

ASPX
دوشنبه 15 شهریور 1389, 13:29 عصر
خب اول تشخيص بده مرورگر كاربر چيه
با اين دستورات ميتوني تشخيص بدي كه مشخصات مرورگر كاربرچيه؟ خب با يك if مديريت كن و يك پيغام بده كه فقط از اين مرورگر خاص استفاده كن!


Response.Write("<B>User Agent ::</B> " + Request.UserAgent + "<BR>");
Response.Write("<B>Browser ::</B> " + Request.Browser.Browser + "<BR>");
Response.Write("<B>Version ::</B> " + Request.Browser.Version + "<BR>");
Response.Write("<B>Major::</B> " + Request.Browser.MajorVersion + "<BR>");
Response.Write("<B>Minor::</B> " + Request.Browser.MinorVersion + "<BR>");



------------
موفق باشيد !

aminsharifloo
دوشنبه 15 شهریور 1389, 13:50 عصر
ممنون فقط این کدها رو من باید کجا بنویسم؟

ASPX
دوشنبه 15 شهریور 1389, 14:08 عصر
در فايل Global.asax و رويداد Application_Start
مثال :فقط با Firefoxكار ميكنه و براي بقيه ميره به صفحه Error.aspx



void Application_Start(object sender, EventArgs e)
{
if (Request.Browser.Browser== "Firefox")
{
Response.Redirect("~/error.aspx");
}


}

Arash_Niazmand
دوشنبه 15 شهریور 1389, 14:33 عصر
در ادامه صحبت دوستمون ...



System.Web.HttpBrowserCapabilities browser = Request.Browser;
string s = "Browser Capabilities\n"
+ "Type = " + browser.Type + "\n"
+ "Name = " + browser.Browser + "\n"
+ "Version = " + browser.Version + "\n"
+ "Major Version = " + browser.MajorVersion + "\n"
+ "Minor Version = " + browser.MinorVersion + "\n"
+ "Platform = " + browser.Platform + "\n"
+ "Is Beta = " + browser.Beta + "\n"
+ "Is Crawler = " + browser.Crawler + "\n"
+ "Is AOL = " + browser.AOL + "\n"
+ "Is Win16 = " + browser.Win16 + "\n"
+ "Is Win32 = " + browser.Win32 + "\n"
+ "Supports Frames = " + browser.Frames + "\n"
+ "Supports Tables = " + browser.Tables + "\n"
+ "Supports Cookies = " + browser.Cookies + "\n"
+ "Supports VBScript = " + browser.VBScript + "\n"
+ "Supports JavaScript = " +
browser.EcmaScriptVersion.ToString() + "\n"
+ "Supports Java Applets = " + browser.JavaApplets + "\n"
+ "Supports ActiveX Controls = " + browser.ActiveXControls
+ "\n"
+ "Supports JavaScript Version = " +
browser["JavaScriptVersion"] + "\n";

Vahid_moghaddam
دوشنبه 15 شهریور 1389, 15:30 عصر
وب سایت باید cross browser باشه. دلیلی نداره که بخواید کاربر رو محدود به استفاده از browser خاصی بکنید.

Alireza_Salehi
دوشنبه 15 شهریور 1389, 17:47 عصر
وب سایت باید cross browser باشه. دلیلی نداره که بخواید کاربر رو محدود به استفاده از browser خاصی بکنید.
بعضی وقت ها کارفرما هزینه corss browser بودن رو تقبل نمیکنه! اتفاقا منطقی هست.

Vahid_moghaddam
دوشنبه 15 شهریور 1389, 19:10 عصر
بعضی وقت ها کارفرما هزینه corss browser بودن رو تقبل نمیکنه! اتفاقا منطقی هست.
چه هزینه ای؟

Alireza_Salehi
دوشنبه 15 شهریور 1389, 19:15 عصر
چه هزینه ای؟
از هماهنگ کردن یک وب سایت با نسخه های مختلف IE که کار رایجی هست که بگذریم
در خیلی از پروژه ها امکاناتی در یک وب سایت استفاده می شود که انتظار عملکرد یکسان اونها در همه مرورگرها صرف زمان و هزین هزیادی رو می طلبه.

نمونه بارزش همین گوگله که اعلام کرده دیگه محصولاتش رو با IE 6 هماهنگ میکنه.

این موضوع چیز عجیبی نیست در خیلی از پروژه ها کاربر رو محدود و مجبور به استفاده از مرورگر خاصی میکنند چون صرف زمان و هزینه براشون توجیهی نداره.

Vahid_moghaddam
دوشنبه 15 شهریور 1389, 19:25 عصر
از هماهنگ کردن یک وب سایت با نسخه های مختلف IE که کار رایجی هست که بگذریم
در خیلی از پروژه ها امکاناتی در یک وب سایت استفاده می شود که انتظار عملکرد یکسان اونها در همه مرورگرها صرف زمان و هزین هزیادی رو می طلبه.

نمونه بارزش همین گوگله که اعلام کرده دیگه محصولاتش رو با IE 6 هماهنگ میکنه.

این موضوع چیز عجیبی نیست در خیلی از پروژه ها کاربر رو محدود و مجبور به استفاده از مرورگر خاصی میکنند چون صرف زمان و هزینه براشون توجیهی نداره.
در مورد ie6 حق با شماست. تا جایی که من می دونم microsoft هم دیگه این شاهکارش رو قبول نداره!
اما نوشتن css با استفاده از تنظیماتی که در همه مرورگرها به یک شکل تفسیر بشن، فکر نمی کنم زمان بر باشه.
به عنوان مثال opera در تفسیر margin (اگه اشتباه نکنم) متفاوت با مثلا FF یا IE7+ عمل می کنه. توی این مورد می شه از padding استفاده کرد.

Behrouz_Rad
دوشنبه 15 شهریور 1389, 20:04 عصر
از هماهنگ کردن یک وب سایت با نسخه های مختلف IE که کار رایجی هست که بگذریم
در خیلی از پروژه ها امکاناتی در یک وب سایت استفاده می شود که انتظار عملکرد یکسان اونها در همه مرورگرها صرف زمان و هزین هزیادی رو می طلبه.

نمونه بارزش همین گوگله که اعلام کرده دیگه محصولاتش رو با IE 6 هماهنگ میکنه.

این موضوع چیز عجیبی نیست در خیلی از پروژه ها کاربر رو محدود و مجبور به استفاده از مرورگر خاصی میکنند چون صرف زمان و هزینه براشون توجیهی نداره.
کاملاً مخالفم. استفاده از "نسخه ی خاصی از یک مرورگر" با "عدم استفاده از یک مرورگر" دو چیز متفاوت هستند. مگر میشه شرکتی ماشینی درست کنه و بگه از این ماشین فقط باید در هوای آفتابی (Firefox، Opera، Chrome) استفاده کنید نه بارانی (IE)؟ اما می تونه بگه از این ماشین نباید در دمای بالای 70 درجه (IE 6.0) استفاده کنید.

احتمالاً در جمله بندی اشتباه کردی و منظورت نسخه ای خاص از یک مرورگر بوده.

موفق باشید.

aminghaderi
دوشنبه 15 شهریور 1389, 20:11 عصر
بعضی وقت ها کارفرما هزینه corss browser بودن رو تقبل نمیکنه! اتفاقا منطقی هست.
ولی کار ما زیر سوال می رود ؟! زیر سایت کپی رایتی می خورد که متعلق به ماست (حالا یا شرکت یا گروه یا فرد) و این لطمه می رسونه به اعتبار کار ما!!!
مشتری یا رقبا تفکری درباره علت این کار نمی کنند و فقط به دید یه ایراد از جانب ما نگاه می کنند.

Alireza_Salehi
دوشنبه 15 شهریور 1389, 22:43 عصر
در مورد ie6 حق با شماست. تا جایی که من می دونم microsoft هم دیگه این شاهکارش رو قبول نداره!
اما نوشتن css با استفاده از تنظیماتی که در همه مرورگرها به یک شکل تفسیر بشن، فکر نمی کنم زمان بر باشه.
به عنوان مثال opera در تفسیر margin (اگه اشتباه نکنم) متفاوت با مثلا FF یا IE7+ عمل می کنه. توی این مورد می شه از padding استفاده کرد.
اصلا بحث CSS نیست هماهنگ کردن استایل سایت با همه مرورگر ها ساده ترین بخش یک پروژه بزرگ است. خیلی راحت با چند استایل میشه مشکل رو برطرف کرد و حتی اگر کمی وقت بذاریم میشه کل مرورگرها رو بایک استایل مدیریت کرد.


کاملاً مخالفم. استفاده از "نسخه ی خاصی از یک مرورگر" با "عدم استفاده از یک مرورگر" دو چیز متفاوت هستند. مگر میشه شرکتی ماشینی درست کنه و بگه از این ماشین فقط باید در هوای آفتابی (Firefox، Opera، Chrome) استفاده کنید نه بارانی (IE)؟ اما می تونه بگه از این ماشین نباید در دمای بالای 70 درجه (IE 6.0) استفاده کنید.
احتمالاً در جمله بندی اشتباه کردی و منظورت نسخه ای خاص از یک مرورگر بوده.
موفق باشید.
نه اتفاقا منظورم هم نسخه خاصی از یک مرورگر بود و هم یک مرورگر خاص.
اصلا این قضیه ماشین که گفتی منطقی نیست.

اگر همه مرورگر ها در یک سطح استاندارد ها رو پشتیبانی می کردند و واکنش اونها به موارد مختلف یکسان بود این حرف شما درست بود. خیلی موارد هست که شما مجبورید برای این که یک مورد در اپرا ، فایرفاکس و اینترنت اکسپلورر عملکرد یکسانی داشته باشد سه بار و طبق میل مرورگر کد بنویسید.
این یعنی سه بار وقت و سه بار هزینه.

مرورگرها نه به CSS نه به javascript و نه به ... واکنش و عملکرد یکسانی ندارند.
مثلا شما مجبوری برای قابلیتی از ActiveX استفاده کنی، آیا میتونی برای مرورگرهای دیگر غیر از IE هم ActiveX بنویسی؟

من زیاد به این مورد برخورد کردم که یک کد استاندارد در مرورگهای مختلف درست جواب ندهد و مجبور بشیم برای هر کدوم جدا کار کنیم.


ولی کار ما زیر سوال می رود ؟! زیر سایت کپی رایتی می خورد که متعلق به ماست (حالا یا شرکت یا گروه یا فرد) و این لطمه می رسونه به اعتبار کار ما!!!
مشتری یا رقبا تفکری درباره علت این کار نمی کنند و فقط به دید یه ایراد از جانب ما نگاه می کنند.
لطمه ای به سابقه نمیزنه... کسی که دنبال اشکال باشه اگر همه مرورگرها حتی IE 1 را هم ساپورت کنید از شما ایراد می گیرد.

چند تا پروژه بزرگ برات لیست کنم که همه مرورگرها رو ساپورت نمی کنند؟

Behrouz_Rad
دوشنبه 15 شهریور 1389, 22:56 عصر
چند تا پروژه بزرگ برات لیست کنم که همه مرورگرها رو ساپورت نمی کنند؟

3 تا لطفاً.

Alireza_Salehi
دوشنبه 15 شهریور 1389, 23:06 عصر
http://en.wikipedia.org/wiki/Comparison_of_JavaScript_frameworks
http://technet.microsoft.com/en-us/library/cc263526.aspx

Behrouz_Rad
دوشنبه 15 شهریور 1389, 23:37 عصر
http://en.wikipedia.org/wiki/Comparison_of_JavaScript_frameworks
http://technet.microsoft.com/en-us/library/cc263526.aspx
برادر صالحی، ارتباط لینک اول با بحث رو متوجه نشدم.
در مورد SharePoint، در اون لینک مشخص هست که Share Point بر روی نسخه های 64 بیتی IE عملکرد مطلوبی نداره.

شما محصولی بزرگی رو نام ببر که در فلان مرورگر اجرا نشه. قرار بود 3 تا مورد هم مثال بزنی.

Alireza_Salehi
سه شنبه 16 شهریور 1389, 00:48 صبح
چند تا از اون فریمورک ها رو بعضی مرورگرها ساپورت نمیشن.
بعضی هاشون رو سافاری بعضی رو فایرفاکس و بعضی رو کروم.

این همه محدودیت رو مرورگرهای مختلف برای sharepoint نام برده شما فقط 64 بیتی IE رو دیدی؟

وقتی برخی قابلیت های یک محصول در مرورگری کار نمی کند یعنی عملا اون مرورگر قابل استفاده نیست چون کاربر انتظار داره هر عملکردی رو بتونه استفاده کنه.

به هر حال بنده نیاز به اثبات این موضوع ندارم چون روشن تر از روزه که تطبیق دادن یک برنامه برای همه مرورگرها کاری نیست که با یک کد نویسی یکسان انجام بشه. در همه پروژه ها هم قسمتی از هزینه و زمان اختصاص به هماهنگ کردن مرورگرها به صورت جداگانه میشه.

برخی از فناوری های وب هم ماهیتا قابلیت اجرا رو همه مرورگرها را ندارند مثل ActiveX . بنابراین اصلا عجیب نیست که یک برنامه رو یک مرورگر ساپورت نشود.

این سایت رو که دیگه میشناسید؟
http://www.quirksmode.org
کلی تفاوت بین مرورگرها وجود داره بعد چطور انتظار دارید یک برنامه به سادگی رو همه مرورگرها کار کنه؟ این کار ممکن نیست مگر این که تفاوت مرورگرها توسط برنامه نویس در هر مرورگر به طور جداگانه در نظر گرفته شود که زمان وهزینه می طلبد.

همه اینها یه طرف هر مرورگری تو هر سیستم عاملی یه جور بازی درمیاره، خود مرورگرها تو همه سیستم عامل ها یکسان برخورد نمی کنند .

Behrouz_Rad
سه شنبه 16 شهریور 1389, 01:07 صبح
چند تا از اون فریمورک ها رو بعضی مرورگرها ساپورت نمیشن.
بعضی هاشون رو سافاری بعضی رو فایرفاکس و بعضی رو کروم.

این همه محدودیت رو مرورگرهای مختلف برای sharepoint نام برده شما فقط 64 بیتی IE رو دیدی؟

وقتی برخی قابلیت های یک محصول در مرورگری کار نمی کند یعنی عملا اون مرورگر قابل استفاده نیست چون کاربر انتظار داره هر عملکردی رو بتونه استفاده کنه.

به هر حال بنده نیاز به اثبات این موضوع ندارم چون روشن تر از روزه که تطبیق دادن یک برنامه برای همه مرورگرها کاری نیست که با یک کد نویسی یکسان انجام بشه. در همه پروژه ها هم قسمتی از هزینه و زمان اختصاص به هماهنگ کردن مرورگرها به صورت جداگانه میشه.

برخی از فناوری های وب هم ماهیتا قابلیت اجرا رو همه مرورگرها را ندارند مثل ActiveX . بنابراین اصلا عجیب نیست که یک برنامه رو یک مرورگر ساپورت نشود.

این سایت رو که دیگه میشناسید؟
http://www.quirksmode.org
کلی تفاوت بین مرورگرها وجود داره بعد چطور انتظار دارید یک برنامه به سادگی رو همه مرورگرها کار کنه؟ این کار ممکن نیست مگر این که تفاوت مرورگرها توسط برنامه نویس در هر مرورگر به طور جداگانه در نظر گرفته شود که زمان وهزینه می طلبد.

همه اینها یه طرف هر مرورگری تو هر سیستم عاملی یه جور بازی درمیاره، خود مرورگرها تو همه سیستم عامل ها یکسان برخورد نمی کنند .
از بحث اصلی دور نشو. خوب می دونی که چی گفتی و چی پاسخ شنیدی. سفسطه نکن. نسخه ی خاصی از یک مرورگر با کل مرورگر متفاوته. شما بحث رو همش به سمت نسخه ی خاص می کشونی. نسخه ی 64 بیتی IE هم نسخه ای از IE هست و یک مرورگر جدا نیست. باز هم تکرار می کنم که تو گفتی برنامه ها می تونن در مرورگر خاصی اجرا نشن و من میگم این محدودیت می تونه به نسخه ی خاصی از یک مرورگر محدود بشه، نه کل مرورگر. این جمله رو در Reply های بعدیت فراموش نکن.

من همچنان منتظرم که نام 3 محصول بزرگی که بر روی کل نسخه های یک مرورگر اجرا نمیشن رو بگی.

موفق باشی.

Alireza_Salehi
سه شنبه 16 شهریور 1389, 01:09 صبح
جواب در پست قبلی هست با دقت مطالعه کن

از نظر من وقتی یک قطعه از یک برنامه رو ورژنی از یک مرورگرکه بیشترین استفاده رو داره کار نکنه کلا از لیست ساپورت اون محصول خط میخوره.

Behrouz_Rad
سه شنبه 16 شهریور 1389, 01:14 صبح
جواب در پست قبلی هست با دقت مطالعه کن

از نظر من وقتی یک قطعه از یک برنامه رو ورژنی از یک مرورگرکه بیشترین استفاده رو داره کار نکنه کلا از لیست ساپورت اون محصول خط میخوره.
پس با صراحت اعلام کن که Share Point روی هیچ مرورگری اجرا نمیشه!!!

Alireza_Salehi
سه شنبه 16 شهریور 1389, 09:08 صبح
خیر این به این معنی نیست که sharepoint رو هیچ مرورگری اجرا نمیشه، بلکه اگر قایلیت های مورد نیاز یک کاربر در مرورگری کار نکنه عملا اون کاربر نمیتونه از اون مرورگر استفاده کنه. یک سری قابلیت ها در sharepoint نیاز به ActiveX داره وقتی کاربر این قابلیت ها براش مهم باشه عملا غیر از IE بقیه رو خط میزنه و استفاده نمیکنه.

فرض کن یک نرم افزار تحت وب قابلیت نقشه داره واین نقشه طوری طراحی شده که فقط در IE درست جواب میده، از قضا وجود نقشه در اون نرم افزار ضروریه، هیچ کدوم از کارمندای اون شرکت یا سازمان نمیان کاراشونو با FF انجام بدن بعد نقشه که لازم شد برن رو IE .

قضیه خیلی واضحه، اصلا دلیل و برهان نمی خواد، یک شرکتی یا یک تجارت آنلاینی با اجرا شدن وب سایتش رو یک مرورگر خاص به هدفش میرسه کاربرانش هم براشون فرقی نمیکنه از چه مرورگری استفاده کنند. دلیلی نداره برای سازگاری با مرورگرهای دیگه هزینه کنه.

شما اصل موضع که سازگار کردن همه قابلیت های یک نرم افزار با همه مرورگرها هزینه داره رو قبول داری؟ اگه داری دیگه جای چه بحثیه.

وقتی بخشی از یک نرم افزار با یک مرورگر کار نکنه کاربرا عملا از اون مرورگر استفاده نمی کنند.

منم قبول دارم توی تجارت آنلاین یک وب سایت باید حداکثر سازگاری رو با مرورگرهای مختلف داشته باشه ولی لزوما به این معنی نیست که همه برای این کار هزینه کنند.

اینا سفسطه است؟ یا واقعیت بازاره؟

Behrouz_Rad
سه شنبه 16 شهریور 1389, 10:23 صبح
این موضوع چیز عجیبی نیست در خیلی از پروژه ها کاربر رو محدود و مجبور به استفاده از مرورگر خاصی میکنند چون صرف زمان و هزینه براشون توجیهی نداره.



احتمالاً در جمله بندی اشتباه کردی و منظورت نسخه ای خاص از یک مرورگر بوده.



نه اتفاقا منظورم هم نسخه خاصی از یک مرورگر بود و هم یک مرورگر خاص.



از نظر من وقتی یک قطعه از یک برنامه رو ورژنی از یک مرورگر که بیشترین استفاده رو داره کار نکنه کلا از لیست ساپورت اون محصول خط میخوره.



چند تا پروژه بزرگ برات لیست کنم که همه مرورگرها رو ساپورت نمی کنند؟



3 تا لطفاً.

و هیچ مثالی نیاوردی که مشخص کنه کدام محصول بزرگ در یک مرورگر خاص اجرا نمیشه.

به این حرفت دقت کن:


از نظر من وقتی یک قطعه از یک برنامه رو ورژنی از یک مرورگر که بیشترین استفاده رو داره کار نکنه کلا از لیست ساپورت اون محصول خط میخوره.

Share Point روی IE نسخه ی 7 و 8 در حالت 64 بیتی عملکرد مطلوبی نداره. این رو که قبول داری؟ با توجه به جمله ی فوق و حرف های پیشینت، IE هم از لیست مرورگرهای قابل پشتیبانی خط می خوره.

در جای دیگه گفتی:


نمونه بارزش همین گوگله که اعلام کرده دیگه محصولاتش رو با IE 6 هماهنگ نمیکنه.

و باز هم میشه نتیجه گرفت که از نظر تو هیچ محصول گوگل با مرورگر IE (در تمامی نسخه ها) سازگار نیست. چون الان IE 6.0 همچنان سهم زیادی در استفاده ی کاربران داره.

نتیجه گیریش با خواننده :لبخندساده:

Alireza_Salehi
سه شنبه 16 شهریور 1389, 11:03 صبح
نتیجه گیری با خواننده

saeid_mh83
چهارشنبه 17 شهریور 1389, 11:10 صبح
نتیجه گیری با خواننده

با سلام به همه عزیزان
چند روز پیش مطلبی رو می خوندم در مورد این مشکلات عدیده IE که شاید بد نباشه اینجا بهش اشاره کنم.
پروژه نجات بخش و جالب css3pie که بصورت سورس باز در کشور کفار عزیز با سواد و بیکار شروع شده که انشاءالله در ایران هم راه بیفته ازین حرکات. شاید زمانی که برای کل کل در سایت می ذاریم بتونه خیلی بیشتر در جای دیگه و کار دیگه مفید فایده باشه.:چشمک:

http://css3pie.com/demos/
اگر می خواهید بیشتر در موردش بدونید و حوصله انگلیسی ندارید می تونید به آدرس زیر مراجعه کنید

http://saleh.soozanchi.ir/blog/1389/06/16/how-to-use-css3-in-internet-explorer/
موفق باشید