能回答这个问题我才佩服(在线等!)

anytel 2003-04-04 04:32:51
<form name="form1" onSubmit="return check()" >
<p>请输入发言:
<input type="text" name="wjmc">
</p>
</form>
<script language="javascript">
function check()
{怎么写?}
</script>

判断字符串中不能带 ' \ \\ 这些特殊字符,且不能允许用户输入一些会导致系统出错的语句,比如不能输入查询数据库的sql语句或者javascript、php的脚本等!
...全文
35 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
flyduron 2003-05-19
  • 打赏
  • 举报
回复
我来回答
Reker熊 2003-04-05
  • 打赏
  • 举报
回复
客戶端驗證安全性較低,只需判定大致的格式

anytel 2003-04-05
  • 打赏
  • 举报
回复
上面的兄弟说的是什么意思?
emu_ston 2003-04-04
  • 打赏
  • 举报
回复
应该使用参数查询而不是用参数去拼一句sql出来查询,不然总有办法叫你死的很难看……
yonghengdizhen 2003-04-04
  • 打赏
  • 举报
回复
从业务逻辑上分析数据的输入格式就可以了..
对于你说的"比如不能输入查询数据库的sql语句或者javascript、php的脚本等!"
这些问题不在考虑之列..
一个设计良好的系统应该支持存储所有符合应用要求的数据,而不是去屏蔽此类数据..

比如,CSDN就支持输入<SCRIPT>\"\\'</SCRIPT>这样的字符和<%=xxxx%>这样的数据, 且能正常显示,为什么???
因为他们在存储的时候除了对存入字符中的'进行了转义处理外没有做任何附加处理,这样存入数据库的是原始字符编码,只是在输出的时候进行了格式化处理..
dooluby 2003-04-04
  • 打赏
  • 举报
回复
少了一项,
在最后一个大括号里面要加上一句:document.use.submit();
这样才能把表单提交。
dooluby 2003-04-04
  • 打赏
  • 举报
回复
function isletter(c)
{
if (((c>='a') && (c<='z')) || ((c>='A') && (c<='Z'))) return true;
else return false;
}
function isnumber(c)
{
if ((c>='0') && (c<='9')) return true;
else return false;
}

function checkLoginAccount(s)
{
for (i=0; i<s.length; i++)
{
n = s.substr(i, 1)
if (!(isletter(n) || isnumber(n) || (n=='_')))
{
return false;
}
}
return true;
}
function check_use()
{
var LoginAccount=document.use.txtLoginAccount.value;
if(!checkLoginAccount(LoginAccount))
{
alert("用户名只能由字母(a-z A-Z)、数字(0-9)和下划线(_)构成!");
document.use.txtLoginAccount.focus();
document.use.txtLoginAccount.select();
return;
}
}

差不多就这些了,你把它保存在一个js文件中,然后在使用的地方链接,再调用check_use()就可以了。
shenjie_0 2003-04-04
  • 打赏
  • 举报
回复
我觉得check中只要稍微写一下类型的容错判断,没有必要面面具到,具体出错可以在后台逻辑层抛出异常,因为表现层不可能把错误屏蔽干净,一家之言
walkingpoison 2003-04-04
  • 打赏
  • 举报
回复
你不能太相信客户端。

你应该是允许客户输入随便什么代码,但是显示的时候进行一些处理,使得这些代码可以被正常显示为文本。就像这里的发言,你随便输入什么代码,照样可以给你正常显示出来。

87,992

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧