网站的多语言切换功能如何实现。求具体的思路。有代码或者实例更好。还有不同语言的数据库存储是不是也不一样,每种语言都要一个数据库还是如何操作分不多。望各位大侠help me多语言切换网站语言切换多个语言数据存储

解决方案 »

  1.   

    refer :http://www.cnblogs.com/heekui/archive/2006/11/30/577648.html
    http://www.cnblogs.com/yangyancheng/archive/2010/02/22/1671004.html
      

  2.   

    我是意思是 网站上面的 中文。英文。日文等 的语言切换。不是编程语言。没表达清楚。抱歉3
    我用asp.net 开发
      

  3.   

    提供一种思路:http://bbs.csdn.net/topics/390531021
      

  4.   

    可以使用Resource方式,页面显示的时候很灵活。
      

  5.   

    试着用了。好像可以。不过数据库不知道怎么处理。必须要每种语言添加一个数据库吗这个没有必要。数据库如果是UTF8兼容的,无论用户是英文还是中文,都可以存到同一个数据库的同一个表中,显示的时候直接显示就行。比如说,User表中Name 可以是Jim,李磊。
    英文版的用户写入到数据库的肯定是英文字符,中文版的用户写入到数据库的肯定是中文字符。在页面前台显示的时候,你原样输出就可以了,这会与你的语言环境一致的。
      

  6.   

    试着用了。好像可以。不过数据库不知道怎么处理。必须要每种语言添加一个数据库吗这个没有必要。数据库如果是UTF8兼容的,无论用户是英文还是中文,都可以存到同一个数据库的同一个表中,显示的时候直接显示就行。比如说,User表中Name 可以是Jim,李磊。
    英文版的用户写入到数据库的肯定是英文字符,中文版的用户写入到数据库的肯定是中文字符。在页面前台显示的时候,你原样输出就可以了,这会与你的语言环境一致的。
    你说的有道理。不过。有些内容。管理员添加的。比如。添加一篇新闻,一个活动。一个通知什么的。我添加的时候是中文。如果前台切换英文版本的。这个新闻从数据库里读出来还是中文。不合理啊。必须也翻译成英文。那么我想到的。就必须要另外一个英文数据库。不知道我表达的能理解不
      

  7.   

    这个方法是我最初想到的。 也是要多数据库吧。而且。这方法不灵活。如果我有很多个语言。要建很多个网站。而且如果一个网站有改动功能所有网站都要改动一遍。
    无论你是多数据库分别保存,还是单数据库多字段保存,不同语言必须都要添加一次的。
    你问了这么多,我猜想你想问的是:【能不能添加一次中文(或其他,总之就是值添加一次)然后其他语言的数据全都自动产生了】那就只能是翻译了,添加时同时翻译成多种语言insert到对应语言的数据保存的地方,(这跟显示的时候翻译成其他语言是一回事)
    你觉得用程序翻译出来的其他语言显示出来能看吗?程序翻译的是很机械化的
      

  8.   

    写XML配置文件要显示的一切titile都写进XML中,读取的时候读取相应的即可
      

  9.   

    试着用了。好像可以。不过数据库不知道怎么处理。必须要每种语言添加一个数据库吗这个没有必要。数据库如果是UTF8兼容的,无论用户是英文还是中文,都可以存到同一个数据库的同一个表中,显示的时候直接显示就行。比如说,User表中Name 可以是Jim,李磊。
    英文版的用户写入到数据库的肯定是英文字符,中文版的用户写入到数据库的肯定是中文字符。在页面前台显示的时候,你原样输出就可以了,这会与你的语言环境一致的。
    你说的有道理。不过。有些内容。管理员添加的。比如。添加一篇新闻,一个活动。一个通知什么的。我添加的时候是中文。如果前台切换英文版本的。这个新闻从数据库里读出来还是中文。不合理啊。必须也翻译成英文。那么我想到的。就必须要另外一个英文数据库。不知道我表达的能理解不还是使用Resource文件解决这个问题。这些文件中都是键值对,也就是说,管理员把新闻,活动什么的都写入到资源文件中,而且中文版本的写一个,英文版本的也要写一个。在前台页面使用相应的键就可以了。
      

  10.   

    其实首先你要说明你站点的情况,做多国语言也分情况,最大的区别应该就是后台操作还是要表现在前台的数据,
    1、情况1的话,通过写语言包就可以很好的实现,
    2、我猜你的情况应该是情况2,就是前台数据需要多语言化,这种也有两种比较常见的情况,
      1是所有语言版本的网站数据是否需要一模一样,还有一种是会有不同的区别,比如英文站点会多几个分页,而小语种的就只需要一些常见的页面就OK,
      无论是上述的哪种情况,处理方式都差不多的,
      靠google翻译这种方式不咋靠谱,如果网站要做稳做大我不太建议,
      所以所有需要翻译的数据首先本地翻译好,然后需要新建数据库,数据表大多相同,根据需要展现的页面的不同,可适量增减数据表,然后建立的网站的时候采用二级域名的方式展现各种语言的网站,所以也就是楼上诸位说的新建站点,最后配置到同一个域名下就OK了。这种方式的好处,各站点之间互不相关,即使这边数据调取出错,也不会影响其他站点的运行,不好的就是工作量很庞大,但是如果真的要把网站做的很强大(例如阿里巴巴的企业商铺),这样的方式,能保证以后网站的良好运行。