关于用SQL语句插入单引号问题?
在网页的input中输入的字符有单引号('),但在ASP中用SQL语句插入到
数据库时会出错,请问要如何解决呢?
问题点数:20、回复次数:8Top
1 楼mkiss(小kiss)回复于 2001-12-30 10:40:32 得分 0
屏蔽啊!
if Instr(request("name"),"'")>0 then
response.write "对不起!不能含有非法字符!"
end ifTop
2 楼tripofdream(梦之旅)回复于 2001-12-30 11:04:01 得分 10
replace(inputstr,"'","''")Top
3 楼tripofdream(梦之旅)回复于 2001-12-30 11:05:11 得分 0
注:将一个单引号替换为两个.Top
4 楼talentboy(网行者)回复于 2001-12-30 11:19:05 得分 5
用RS对象的AddNew方法就没关系,不要用insert intoTop
5 楼ar7_top(黑白呸,男生女生呸)回复于 2001-12-30 11:27:52 得分 0
把一个单引号替换成两个就行了Top
6 楼xyzoem(xf)回复于 2001-12-30 11:33:24 得分 0
replace(inputstr,"'","''")
或者
用RS对象的AddNew方法
Top
7 楼ssm1226(雨中人(虚心学习))回复于 2001-12-30 11:57:06 得分 0
同意,Top
8 楼bian8021(河流)回复于 2001-12-30 12:49:47 得分 5
用javascript 来控制,一旦出现非法字符就弹出对话框:输入有错误,请重新输入。
看下面的例子:
<HTML>
<HEAD>
<SCRIPT LANGUAGE="JavaScript">
<!--
function formCheck() {
if (document.theform.user_name.value == "") /**判断是否填写了姓名
{
alert("请输入您的名字.");/**弹出提示窗口
return false;
}
if ( document.theform.email.value=="")
/**判断是否填写email与及有没有“@”
{
alert("请输入您的email.");
return false;
}
if(document.theform.email.value.indexOf("@")==-1)
{
alert("您输入的email不正确!");
return false;
}
}
//-->
</SCRIPT>
</HEAD>
<BODY>
<form name="theform" method="post" action="mailto:" onSubmit="return formCheck();">
<table width="300" border="0" cellspacing="0" cellpadding="0" align="center">
<tr>
<td colspan="2"></td>
</tr>
<tr>
<td width="95">姓名:</td>
<td width="205">
<input type="text" name="user_name">
</td>
</tr>
<tr>
<td width="95">电子邮箱:</td>
<td width="205">
<input type="text" name="email">
</td>
</tr>
<tr>
<td colspan="2">
<div align="center">
<input type="submit" name="Submit" value="Submit">
</div>
</td>
</tr>
</table>
</form>
</BODY>
</HTML>
Top




