可能性
1、别人绕过了js,直接提交数据到你的后台,导致超出长度(也就是说,不要相信客户端提交的任何数据,js做的工作,在后台程序里都要再做一遍)
2、数据库长度是字节长度,而汉字是占用2个字节的,你要判断字节长度进行校验
上面思路是正确的, 用ascw 函数也可以
private function LenC( ps as string ) as Integer
Dim n As Integer
Dim StrLen As Integer
For n = 1 To Len(Text1Text)
If Ascw(Mid(Text1Text, n, 1)) >256 Then
StrLen = StrLen + 2
Else
StrLen = StrLen + 1
Next n
return strLen
end function
首先String不是基本类型
八种基本类型最大值获得方法如下,用其封装类中的静态常量字段MAX_VALUE,布尔型没有最大值
// boolean
Systemerrprintln(BooleanTRUE);// 布尔型没有最大值
// byte
Systemerrprintln(ByteMAX_VALUE);
// char
Systemerrprintln((int) CharacterMAX_VALUE);
// short
Systemerrprintln(ShortMAX_VALUE);
// int
Systemerrprintln(IntegerMAX_VALUE);
// long
Systemerrprintln(LongMAX_VALUE);
// double
Systemerrprintln(DoubleMAX_VALUE);
// float
Systemerrprintln(FloatMAX_VALUE);
以上就是关于js校验textarea value的长度然后存到数据库中,发现还是超出长度了,难道要程序中先截字然后在存到数据库中全部的内容,包括:js校验textarea value的长度然后存到数据库中,发现还是超出长度了,难道要程序中先截字然后在存到数据库中、VB.net 如何获得中文字符串的长度、java,如何得出各种类型变量的最大长度等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)