表A一字段为200长度的varchar字符型,取文本框的输入内容保存进该字段,如何保证该内容不超过200长度?在ASP里用len不行。
数据库里,200长度的varchar字符型,一个汉字的长度是2
但在ASP里,一个汉字用len取得的长度为1。
所以假设文本框输入内容tmpinfo
left(tmpinfo,200)保存进数据库表还是有可能报长度太长的错误的。
数据库里,200长度的varchar字符型,一个汉字的长度是2
但在ASP里,一个汉字用len取得的长度为1。
所以假设文本框输入内容tmpinfo
left(tmpinfo,200)保存进数据库表还是有可能报长度太长的错误的。
<script language="vbscript">
str="12345"
cc=left(str,100)
msgbox len(cc)
</script>
不会,你试下这个,就明白了
楼上的,你没搞懂我的意思。
数据库里,一个汉字的长度是2。
但在ASP里,一个汉字长度为1。
但文本框输入的内容既包含数字也有汉字。不是单纯left(str,100)或left(str,200)能解决的。
如果输入的内容为199个字符加一个汉字,left(str,200)保存数据库时报错;
如果输入的内容为200个字符,left(str,100)则使输入的内容保存不完整。
你可以这样
left(tmpinfo,200)
把截取进来的字符串.检测它的字节大小.
不管长度..
楼上的,字节怎么检测大小?
其实自己写一个函数用于判断汉字 还是字母就可以了!
这程序我以前在google上搜索过 直接就是计算长度的 汉字算2 字母算1 你可以找找!
呵呵