Re---求助,asp+sql查询中引用msxml的问题!
liaob 2004-11-23 12:15:51 小弟现在用msxml带参数到sql中查询数据并显示到asp中。可是如果带过去的参数有特殊字符如%,<,>之类的话,就会变成乱码。请各位好手帮帮忙,我焦头烂额了。
我的程序代码是:
<script language="javascript">
function aa(){
var vMenugroup = form1.menugroup.value;
var vMenugroup2 = form1.module.value;
var veqpidtype = form1.eqpidtype.value;
var oXMLDoc = new ActiveXObject('MSXML');
vMenugroup=vMenugroup;
veqpidtype=veqpidtype;
vMenugroup2=vMenugroup2;
vMenugroup = vMenugroup.replace("/", "~~~~");
vMenugroup = vMenugroup.replace("+", "|||");
vMenugroup = vMenugroup.replace("#", "……");
vMenugroup = vMenugroup.replace("%", "㊣");
sURL = 'Recipe_Modi_XML3.asp?Menugroup=' + vMenugroup +'&Menugroup2=' + vMenugroup2 + '&eqpidtype=' +veqpidtype;
oXMLDoc.url = sURL;
var oRoot=oXMLDoc.root;
if(oRoot.children != null)
{
for(var i=0;i<oRoot.children.length;++i)
{
oItem = oRoot.children.item(i);
sName = oItem.text;
re="^_^";
sName = sName.replace(re, "<");
re="^-^";
sName = sName.replace(re, ">");
var oOption = document.createElement('OPTION');
oOption.text = sName;
oOption.value = sName;
form1.recipe.options.add(oOption);
}
}
}
</script>
-----------------Recipe_Modi_XML3.asp
<!--#include virtual="/Conn_Process.asp"-->
<%
Menugroup=Request.QueryString("Menugroup")
module=Request.QueryString("Menugroup2")
eqpidtype = Request.QueryString("eqpidtype")
Menugroup = Replace(Menugroup,"~~~~","/")
Menugroup = Replace(Menugroup, "|||","+")
Menugroup = Replace(Menugroup, "……","#")
Menugroup = Replace(Menugroup, "㊣","%")
SET rs=server.CreateObject("adodb.recordset")
sql="select distinct replace(replace(replace(t.recpid,'>','^-^'),'<','^_^'),'/','~~~') from mult_chamber_data t where t.Menugroup='"& Menugroup &"' and module='"& module &"' and isms='"& eqpidtype &"' order by 1 "
rs.Open sql,conn_process
%>
<?xml version="1.0" encoding="gb2312" ?>
<loccs>
<location></location>
<%
do while not rs.EOF
%>
<location><%=rs(0)%></location>
<%
rs.MoveNext
loop
rs.Close
set rs=nothing
%>
</loccs>