在做网页时,要实现“保存检索策略”的功能,点击“保存检索策略”(文字链接),则检查用户是否登录,若登录过,则将检索策略保存入数据库中。
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%>前后需要加单引号吗?