PDA

View Full Version : تغییر زبان با چک کردن IP



bbc_sh
سه شنبه 14 آبان 1387, 15:12 عصر
چه طوری میشه با چک کردن آی پی زبان یه سایت رو مشخص کرد.یعنی اگه داخل ایران باشه فارسی وگرنه انگلیسی

shahab_ksh
سه شنبه 14 آبان 1387, 15:15 عصر
چه طوری میشه با چک کردن آی پی زبان یه سایت رو مشخص کرد.یعنی اگه داخل ایران باشه فارسی وگرنه انگلیسی

چرا از پیش فرض زبان کامپیوتر به جای چک کردن آی پی استفاده نمی کنید مثل گوگل یا خیلی از سایت های دیگه"عرف اینه"

shahab_ksh
سه شنبه 14 آبان 1387, 15:32 عصر
این کار خوب نیست چون توی ایران هم کسانی هستند که فارسی زبانن و انگلیسی زبان سیستم عاملشون هستش@

وقتی اطلاعات فنی ندارید اظهار نظر بفرمایید این روش روش اخطرعی من نیست روش استانداردی هست که همه جا رعایت میشه بد نیست سری به سایت های مرجع بزنی یا دو سه تا کتاب بخونین که متوجه بشید روش استاندارد برای تعیین زبان بصورت اتوماتیک در وب سایت چی هستش

bbc_sh
سه شنبه 14 آبان 1387, 16:29 عصر
سلام دوستان
من هم میخوام از روش زبان پیش فرض کامپیوتر استفاده کنم.واسه همین local resource ساختم برای همه صفحه ها ,کار هم میکنه. ولی با css هاش مشکل دارم ,دوتا css دارم ,فارسی و انگلیسی ,چه طوری تشخیص داده میشه که زبان کامپیوتر چیه که بخواد همون css لود بشه؟میشه css هم توی local resorce گذاشت؟

shahab_ksh
سه شنبه 14 آبان 1387, 17:36 عصر
این فیلم رو هماره با اون کدهای آموزشیش ببینید

http://www.asp.net/learn/videos/video-40.aspx

bbc_sh
سه شنبه 14 آبان 1387, 18:43 عصر
این فیلم رو قبلا دیدم .الان هم سایتم مشکلی نداره و هردو زبانش و باتن هایی که برای تغییر زبان گذاشتم کار میکنن.فقط میخوام به همراه تغییر زبان css هم عوض بشه.نمیدونم چه کدی باید بنویسم وکجا؟
این هم کد های من:
توی همه صفحه ها به جز مسترپیج:

protected override void InitializeCulture()
{
if (Session["lang"] != null)
{
string selectedlang = Session["lang"].ToString();
UICulture = selectedlang;
Culture = selectedlang;
Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture(selectedlang);
Thread.CurrentThread.CurrentUICulture = new CultureInfo(selectedlang);

}
base.InitializeCulture();
}
باتن هایی که در مسترپیج هستن برای تغییر زبان:

protected void LinkButton1_Click(object sender, EventArgs e)
{
Session["lang"] = "en-US";
Server.Transfer(Request.Url.PathAndQuery, false);

}
protected void LinkButton2_Click(object sender, EventArgs e)
{
Session["lang"] = "fa-IR";
Server.Transfer(Request.Url.PathAndQuery, false);


}

bbc_sh
چهارشنبه 15 آبان 1387, 12:34 عصر
سلام
من این کد رو نوشتم(توی پیج لود مسترپیج) واسه تشخیص اینکه زبان پیش فرض مرورگر چیه ولی فقط دستورif اول اجرا میشه.مثلا اگه زبان پیش فرض فارسی باشه و if اول انگلیسی متن ها فارسی میشن ولی css , css انگلیسی هست(و برعکس)یعنی اینکه اگه زبان مرورگر تغییر داده بشه متن ها تغییر مکنن ولی css همون قبلی باقی میمونه..!!!!چرا؟

if (Request.Headers["Accept-Language"].ToString().IndexOf("en-US") != -1)
{
this.Literal1.Text = "<link href='en.css' rel='stylesheet' type='text/css' />";
}
else
if(Request.Headers["Accept-Language"].ToString().IndexOf("fa-IR") != -1)
{
this.Literal1.Text = "<link href='fa.css' rel='stylesheet' type='text/css' />";
}
<asp:Literal ID="Literal1" runat="server"></asp:Literal>

iman_ad
پنج شنبه 30 آبان 1387, 22:31 عصر
کار دوستان در رابطه با ip کار اصلا اشتباهی نیست سایت samsung.com ملاحظه بفرمایید