主题:[讨论]自定义函数的参数传递
在做网页时,要实现“保存检索策略”的功能,点击“保存检索策略”(文字链接),则检查用户是否登录,若登录过,则将检索策略保存入数据库中。
save_searchstratery.asp文件如下:
<script language="vbscript" runat="server">
sub savecheck(sql_temp_str)
dim rs_stratery
dim username2
dim sql_stratery
dim searchstratery
if session("username")<>"" then
if msgbox ("确定要保存检索策略吗?",vbyesno,"检索策略保存提示") then
set rs_stratery=server.createobject("adodb.recordset")
username2=trim(session("username"))
sql_stratery="select searchstratery from user_info where username='" & username "'"
if rs_stratery.recordcount<>0 then
if rs_stratery.fields("searchstratery")<>"" then
searchstratery=rs_stratery.fields("searchstratery") & "#" & sql_temp_str
else
searchstratery=sql_temp_str
end if
rs_stratery.fields("searchstratery")=searchstratery
rs_stratery.update
msgbox "保存成功!"
set rs_stratery=nothing
end if
end if
else
msgbox "您还未登录,不能保存检索策略!"
end if
end sub
</script>
在检索页面中<!--#include file="save_searchstratery.asp"-->
且:<a href="#" onclick="savecheck(<%=sql_temp_str%>)">……保存检索策略</a>
但运行时就出现错误:缺少“)”。
调试时,将onclick="savecheck(<%=sql_temp_str%>)"一句去掉就没有错误了。
其中sql_temp_str的形式为:select * from resource where (resource_name like '%中华%' or description like '%中华%')/【检索词】“中华”。是一个SQL语句,为字符串。
哪位高手能指点一下,不只到错在哪里。是不是参数中不能包含“()”括号啊?另外,对于字符串参数,如何写?<%=sql_tmep_str%>前后需要加单引号吗?
save_searchstratery.asp文件如下:
<script language="vbscript" runat="server">
sub savecheck(sql_temp_str)
dim rs_stratery
dim username2
dim sql_stratery
dim searchstratery
if session("username")<>"" then
if msgbox ("确定要保存检索策略吗?",vbyesno,"检索策略保存提示") then
set rs_stratery=server.createobject("adodb.recordset")
username2=trim(session("username"))
sql_stratery="select searchstratery from user_info where username='" & username "'"
if rs_stratery.recordcount<>0 then
if rs_stratery.fields("searchstratery")<>"" then
searchstratery=rs_stratery.fields("searchstratery") & "#" & sql_temp_str
else
searchstratery=sql_temp_str
end if
rs_stratery.fields("searchstratery")=searchstratery
rs_stratery.update
msgbox "保存成功!"
set rs_stratery=nothing
end if
end if
else
msgbox "您还未登录,不能保存检索策略!"
end if
end sub
</script>
在检索页面中<!--#include file="save_searchstratery.asp"-->
且:<a href="#" onclick="savecheck(<%=sql_temp_str%>)">……保存检索策略</a>
但运行时就出现错误:缺少“)”。
调试时,将onclick="savecheck(<%=sql_temp_str%>)"一句去掉就没有错误了。
其中sql_temp_str的形式为:select * from resource where (resource_name like '%中华%' or description like '%中华%')/【检索词】“中华”。是一个SQL语句,为字符串。
哪位高手能指点一下,不只到错在哪里。是不是参数中不能包含“()”括号啊?另外,对于字符串参数,如何写?<%=sql_tmep_str%>前后需要加单引号吗?