我将站点移到了另一个主机,但是数据库内容之间的语言菜单<a>
标签未在标签之间打印。但是在href
参数中,它会绘制相同的查询。
当我检查代码的输出时:
以下是该行中的代码:
<ul class="headerLanguage"><li><a href="/?lang=<%=Session("lang")%>"><%=Session("lang")%><img alt="" title="" src="/images/icon/08.png" /></a><ul><%
Set a = SQL.Execute("SELECT kisa FROM diller WHERE kisa<>'"& Session("lang") &"'")
Do while not a.Eof %><li><a href="/?lang=<%=a("kisa")%>"><%=a("kisa")%></a></li><% a.MoveNext:Loop
a.Close
Set a = Nothing %></ul></li></ul>
当我删除href
参数中的查询时,另一个查询将运行,并且显示内容。
我的应用程序是Classic ASP,但是我的旧站点没有问题,为什么会这样?我该怎么解决?
感谢您的帮助。
答案 0 :(得分:0)
我以前遇到过这个问题。我不确定发生这种情况的确切原因(希望有人可以解释),但是有时如果您多次直接从记录集中引用数据,它可能会返回一个空值。对我有用的解决方案是先将数据分配给变量,然后引用该变量。试试这个:
<ul class="headerLanguage">
<li>
<a href="/?lang=<%=Session("lang")%>"><%=Session("lang")%>
<img alt="" title="" src="/images/icon/08.png" />
</a>
<ul><%
Dim a, kisa
Set a = SQL.Execute("SELECT kisa FROM diller WHERE kisa<>'"& Session("lang") &"'")
Do while not a.Eof
kisa = a("kisa") %>
<li><a href="/?lang=<%=kisa%>"><%=kisa%></a></li><%
a.MoveNext:Loop
a.Close
Set a = Nothing
%></ul>
</li>
</ul>