查看: 2010|回复: 25
|
大胆创新. Fully utilised XML.
[复制链接]
|
|
我想问大家, 以下的意见行的通吗?
我需要develop一个multilingual的website. 有 English,有 Chinese, 有 Japanese de.
那, 我有一个 ASP file, 有 content的. 每当那个ASP file loaded 的时候, 我就会 pass 一个 langid 的parameter, eg: www.xxx.com/xxx.asp?langid=2, 2代表 English.那意思是这个page会display English 的 content.
Ok, 问题在这边. 那些一样的content,但不一样的 language, 我的idea是store在分别XML file里. Based on langid load and parse correspond 的XML file.
不明白的话, 联络我: zchong1022@hotmai.com |
|
|
|
|
|
|
|
发表于 26-12-2006 11:26 AM
|
显示全部楼层
这不是什么创新... 早在几年前已经有人那么做... 我也是那么做, 用 xml xpath 就行了. |
|
|
|
|
|
|
|
发表于 26-12-2006 11:30 AM
|
显示全部楼层
汗。。。你是刚毕业的吗?接触多的人都会知道这方法啊。。还有也可以用数据库的方法。。。 |
|
|
|
|
|
|
|
发表于 26-12-2006 11:42 AM
|
显示全部楼层
原帖由 zchong1022 于 26-12-2006 10:54 AM 发表
我想问大家, 以下的意见行的通吗?
我需要develop一个multilingual的website. 有 English,有 Chinese, 有 Japanese de.
那, 我有一个 ASP file, 有 content的. 每当那个ASP file loaded 的时候, 我就会 pas ...
如果, 可以的话,不要后面的parameter最好。
然后,他会自己记得user最后选的是什么language
那才是最好的 |
|
|
|
|
|
|
|
发表于 26-12-2006 12:44 PM
|
显示全部楼层
store data在xml?google一下看看xml的用法。
用database吧。 |
|
|
|
|
|
|
|

楼主 |
发表于 26-12-2006 02:18 PM
|
显示全部楼层
谢谢, 大家的宝贵意见.那你们有听过 XML Data Island 吗? |
|
|
|
|
|
|
|
发表于 26-12-2006 03:54 PM
|
显示全部楼层
原帖由 zchong1022 于 26-12-2006 02:18 PM 发表
谢谢, 大家的宝贵意见.那你们有听过 XML Data Island 吗?
这种技术不适合用于大量的资料, 大量的资料应该用回资料库. |
|
|
|
|
|
|
|

楼主 |
发表于 26-12-2006 07:07 PM
|
显示全部楼层
回复 #7 goatstudio 的帖子
那也是........我本来想试试看的, 但想想一下, 又不适合......所以......放弃了...... |
|
|
|
|
|
|
|
发表于 26-12-2006 07:49 PM
|
显示全部楼层
原帖由 zchong1022 于 26-12-2006 07:07 PM 发表
那也是........我本来想试试看的, 但想想一下, 又不适合......所以......放弃了......
XML要是作为一个资料库的话是太笨重了,而且XPath的能力远远不及SQL(虽然两个是不一样的东西,不过这里我拿XML和Database作比较);XML Schema也只能够作为一些静态的资料储存。
不过,作为一个传输媒介,XML就可以发挥它的长处了,好像RSS,WSDL,SOAP,XML-RPC等等都是以XML为基础的传输协议。 |
|
|
|
|
|
|
|

楼主 |
发表于 26-12-2006 08:07 PM
|
显示全部楼层
但是, 用 database load,会很慢的. So,我是希望XML 真的能帮到我.......So, 希望这边有人可以指点...... |
|
|
|
|
|
|
|
发表于 26-12-2006 08:18 PM
|
显示全部楼层
原帖由 zchong1022 于 26-12-2006 08:07 PM 发表
但是, 用 database load,会很慢的. So,我是希望XML 真的能帮到我.......So, 希望这边有人可以指点......
用JavaScript。IE用XMLDOM ActiveX物件,Mozilla则用createDocument方法import XML文件。import之后用DOM(Document Object Model) parse XML Elements。(注:不要用XML Data Islands,不实际;另外,你的'资料库'的所有资料将会公诸于世,慎重考虑)
[ 本帖最后由 苦瓜汤 于 26-12-2006 08:20 PM 编辑 ] |
|
|
|
|
|
|
|
发表于 26-12-2006 08:54 PM
|
显示全部楼层
原帖由 苦瓜汤 于 26-12-2006 08:18 PM 发表
用JavaScript。IE用XMLDOM ActiveX物件,Mozilla则用createDocument方法import XML文件。import之后用DOM(Document Object Model) parse XML Elements。(注:不要用XML Data Islands,不实际;另外,你的'资料库 ...
那不是有点靠近ajax了 |
|
|
|
|
|
|
|
发表于 26-12-2006 09:18 PM
|
显示全部楼层
原帖由 红发 于 26-12-2006 08:54 PM 发表
那不是有点靠近ajax了
有点不一样。Ajax的XMLHttp object附加了HTTP methods,XMLDOM只能够选择同步或非同步load XML data。
其他的方法如用Server-side preprocess也可以,如ASP,PHP等。 |
|
|
|
|
|
|
|

楼主 |
发表于 26-12-2006 10:26 PM
|
显示全部楼层
Em.....谢谢, "苦瓜汤", 但如果, 我要用 Server-side script 来控制它来 parse 不同的 Human Language, eg: Japansed and Mandarin, 但是是一样的content (note: content stored in XML). 行得通吗? |
|
|
|
|
|
|
|
发表于 26-12-2006 10:52 PM
|
显示全部楼层
原帖由 zchong1022 于 26-12-2006 10:26 PM 发表
Em.....谢谢, "苦瓜汤", 但如果, 我要用 Server-side script 来控制它来 parse 不同的 Human Language, eg: Japansed and Mandarin, 但是是一样的content (note: content stored in XML). 行得通吗?
make sure你的xml encoding是unicode.还有你的server side必须能够处理unicode,例如php的iconv。 |
|
|
|
|
|
|
|
发表于 26-12-2006 11:19 PM
|
显示全部楼层
原帖由 zchong1022 于 26-12-2006 08:07 PM 发表
但是, 用 database load,会很慢的. So,我是希望XML 真的能帮到我.......So, 希望这边有人可以指点......
用资料库来读取不会慢, 只是资源用的比较多.
用 XML 的话, 其实也不一定要 UNICODE, 当然有 UNICODE 是最好. 这里有个 ASP 用 XML 来达到 Multilingual 的例子:
Multilingual Web Pages with ASP and XML |
|
|
|
|
|
|
|
发表于 27-12-2006 12:48 AM
|
显示全部楼层
我的方式,用 JSP Tag Library.
好处, What you see is what you get in Visual Web Editor.
速度, 只load一次在开始的时后。
Sample.jsp :
<table>
<tr class="TrClass">
<td><multilang:print key="User_Login.User_Name">User Name</multilang:print></td>
<td><input type="text" name="User_Name" class="InputClass" maxlength="30" size="30" value=""></td>
</tr>
</table>
messages_ENGLISH.properties :
User_Login.Login_ID=Login ID
User_Login.Login_Password=Login Password
User_Login.User_Name=User Name
User_Login.User_Type=User Type
User_Login.User_Status=User Status
messages_CHINESE.properties :
User_Login.Login_ID=注册身份证
User_Login.Login_Password=注册密码
User_Login.User_Name=用户名
User_Login.User_Type=用户类型
User_Login.User_Status=用户状态
English Output :
<table>
<tr class="TrClass">
<td>User Name</td>
<td><input type="text" name="User_Name" class="InputClass" maxlength="30" size="30" value=""></td>
</tr>
</table>
Chinese Output :
<table>
<tr class="TrClass">
<td>用户名</td>
<td><input type="text" name="User_Name" class="InputClass" maxlength="30" size="30" value=""></td>
</tr>
</table>
[ 本帖最后由 hkloke2000 于 27-12-2006 01:19 AM 编辑 ] |
|
|
|
|
|
|
|

楼主 |
发表于 27-12-2006 02:46 AM
|
显示全部楼层
本人的感激, 非笔墨能形容.....再此谢谢
*鞠躬
** 欢迎, 那些还没给 comment 的, 请接着给, 好让其他人参考. ** |
|
|
|
|
|
|
|
发表于 27-12-2006 11:27 AM
|
显示全部楼层
XML太慢了,直接用variable快些,再写cache |
|
|
|
|
|
|
|
发表于 27-12-2006 11:36 AM
|
显示全部楼层
原帖由 exiang 于 27-12-2006 11:27 AM 发表
XML太慢了,直接用variable快些,再写cache
variable 固然快, 但如果用 variable 的话, 用户就不能随心所欲修改里面的字眼. |
|
|
|
|
|
|
| |
本周最热论坛帖子
|