| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 746 人关注过本帖
标题:[求助]算是参数传递问题吧
只看楼主 加入收藏
肖走
Rank: 1
等 级:新手上路
帖 子:85
专家分:0
注 册:2005-9-26
收藏
 问题点数:0 回复次数:16 
[求助]算是参数传递问题吧
我写了一个分页查询,SQL语句的where后的参数是通过表单从上一个页面传递过来的,问题是分页成功了,正确的显示了第一页,但是我点击下一页时抱错,“……语法错误 (操作符丢失) 在查询表达式 '年=' 中。”
请问各位怎么解决呢,谢谢!sql语句应该是没问题的,分页的第一页也正确的,也就是说表单正确传递了,但就是点击下一页时程序无法得到表单数据了!

[此贴子已经被作者于2005-10-10 10:47:52编辑过]


搜索更多相关主题的帖子: 参数 
2005-10-10 09:59
rainic
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:2367
专家分:0
注 册:2005-8-9
收藏
得分:0 
你的代码是怎么写的?

2005-10-10 10:08
肖走
Rank: 1
等 级:新手上路
帖 子:85
专家分:0
注 册:2005-9-26
收藏
得分:0 

这个是datequery_year.asp <!--#include file="conn.asp"--> <% whatyear=request.form("年") whatmonth=request.form("月") whatday=request.form("日") %>

<font color="#0000FF" size="5">

<b><i>模糊查询的结果</i></b></font>: <table cellSpacing=0 borderColorDark=#ffffff cellPadding=4 width='100%' borderColorLight=#aaaaaa border=1">

<% Set rs = Server.CreateObject ("ADODB.Recordset") sql="Select * from gzhz where 年="&request.form("年")&"" rs.Open sql,conn,1,2 %>

<% dim gzcount gzcount=rs.RecordCount %> <tr bgcolor=#006c6c> <td colspan=<%=rs.Fields.Count+1 %>.><%Response.Write "<b><font color=white>共"&gzcount&"条纪录 当前时间"&CStr(now)&"</font></b>"%></td> </tr> <tr bgcolor="#ffffaf">

<!--#include file="table.inc"--> <form method="POST" action="datequery_year.asp" name="FrontPage_Form1" onsubmit="return FrontPage_Form1_Validator(this)"> <p align="right"><font size="2" face="宋体"> <a href="datequery_year.asp?iPage=0&amp;OldPageNo=<%=PageNo%>">第一页</a> <a href="datequery_year.asp?iPage=1&amp;OldPageNo=<%=PageNo%>">上一页</a> <a href="datequery_year.asp?iPage=2&amp;OldPageNo=<%=PageNo%>">下一页</a> <a href="datequery_year.asp?iPage=3&amp;OldPageNo=<%=PageNo%>">最后一页</a> 第 <input type="text" name="PageIn" size="4" value=<%=PageNo%>>页,页数:</font><font size="2"><%=PageNo%>/<%=rs.PageCount%></font></p> <input type="hidden" name="OldPageNo" value="<%=PageNo%>"> </form>

<% rs.close Set rs = Nothing conn.close set conn=Nothing %>

这个是table.inc <% for i=0 to rs.Fields.Count-24 Response.Write "<td align=center nowrap><font size=2>ID号</font></td>" Next FOR i=1 to rs.Fields.Count-23 Response.Write "<td align=center nowrap><font size=2>开始日期</font></td>" Next FOR i=2 to rs.Fields.Count-22 Response.Write "<td align=center nowrap><font size=2>结束日期</font></td>" Next FOR i=3 to rs.Fields.Count-21 Response.Write "<td align=center nowrap><font size=2>发生时间段</font></td>" Next FOR i=11 to rs.Fields.Count-13 Response.Write "<td align=center nowrap><font size=2>"&Ucase(rs(i).Name)&"(分钟)</font></td>" Next FOR i=12 to rs.Fields.Count-1 Response.Write "<td align=center nowrap><font size=2>"&Ucase(rs(i).Name)&"</font></td>" Next %> </tr>

<%

'页号处理 '每页记录条数为20 rs.PageSize=20:iPage=Request("iPage"):PageIn=Request("PageIn"):OldPageNo=Request("OldPageNo") If iPage="" and PageIn="" Then PageNo=1 Else If PageIn="" Then Select Case iPage Case "0" PageNo=1 Case "1" PageNo=OldPageNo-1 Case "2" PageNo=OldPageNo+1 Case Else PageNo=rs.PageCount End Select Else If len(PageIn)>5 Then response.write "输入的页码范围超出有效范围!" PageNo=1 Else if Clng(pagein)>32767 then response.write "输入的页码范围超出有效范围!" pageno=1 else PageNo=CInt(PageIn) end if End If End If End If If PageNo<1 Then:PageNo=1:End If If PageNo>rs.PageCount Then:PageNo=rs.PageCount:End If %>

<% '输出内容 rs.MoveFirst rs.AbsolutePage=PageNo '分页处理 For c=1 to rs.PageSize if Not(rs.EOF) then If ((c+5) Mod 5)=0 Then Response.Write "<tr bgcolor=#e4e0ca>" Else Response.Write "<tr>" End if Response.Write "<td><p align=center><font size=2 nowrap>"& (pageno-1)*rs.pagesize+c &"</font></td>"

for i=0 to rs.Fields.Count-25 Response.Write "<td align=center nowrap><font size=2>"&Ucase(rs(i).Value)&"</font></td>" Next FOR i=1 to rs.Fields.Count-23 Response.Write "<td align=center nowrap><font size=2>"&Ucase(rs(1).Value&"-"&rs(2).Value&"-"&rs(3).Value)&"</font></td>" Next FOR i=2 to rs.Fields.Count-22 Response.Write "<td align=center nowrap><font size=2>"&Ucase(rs(4).Value&"-"&rs(5).Value&"-"&rs(6).Value)&"</font></td>" Next FOR i=3 to rs.Fields.Count-21 Response.Write "<td align=center nowrap><font size=2>"&Ucase(rs(7).Value&":"&rs(8).Value&"-"&rs(9).Value&":"&rs(10).Value)&"</font></td>" Next FOR i=11 to rs.Fields.Count-1 Response.Write "<td align=center nowrap><font size=2>"&rs(i).Value&"</font></td>" Next

rs.MoveNext Response.Write "</tr>" end if next Response.Write "</tr>" Response.Write"</table>"

%>

<script Language="JavaScript"> <!-- function FrontPage_Form1_Validator(theForm) { var checkOK = "0123456789-"; var checkStr = theForm.PageIn.value; var allValid = true; var decPoints = 0; var allNum = ""; for (i = 0; i < checkStr.length; i++) { ch = checkStr.charAt(i); for (j = 0; j < checkOK.length; j++) if (ch == checkOK.charAt(j)) break; if (j == checkOK.length) { allValid = false; break; } allNum += ch; } if (!allValid) { alert("在 PageIn 域中,只能输入 数字 个字符。"); theForm.PageIn.focus(); return (false); } return (true); } //--> </script>

[此贴子已经被作者于2005-10-10 10:19:41编辑过]


2005-10-10 10:15
rainic
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:2367
专家分:0
注 册:2005-8-9
收藏
得分:0 
sql="Select * from gzhz where 年="&amp;request.form("年")&amp;""
改成:
sql="Select * from gzhz where 年='"&amp;request.form("年")&amp;"'"

2005-10-10 10:32
肖走
Rank: 1
等 级:新手上路
帖 子:85
专家分:0
注 册:2005-9-26
收藏
得分:0 
不行的,这样改会报错的“标准表达式中数据类型不匹配。”!我是说分页的下一页不能得到FORM的表单的数据,这个怎么解决?

2005-10-10 10:36
肖走
Rank: 1
等 级:新手上路
帖 子:85
专家分:0
注 册:2005-9-26
收藏
得分:0 
楼上的头像是珠海渔女呀!

2005-10-10 10:38
盖茨他爹
Rank: 6Rank: 6
等 级:贵宾
威 望:28
帖 子:5255
专家分:0
注 册:2005-5-3
收藏
得分:0 
既然已经用变量赋值了: whatyear=request.form("年") 为什么在SQL语句中不用变量: sql="Select * from gzhz where 年="&whatyear&"" 问题出在哪里现在还不好说,先这么测试一下,看看request.form("年")传递过来没有,在sql="Select * from gzhz where 年="&request.form("年")&""前面加上一句: response.write(request.form("年")) 看看能写出来具体哪年的数值不?如果不能写出来是传值的问题,如果能写出来就是楼上说的sql问题了
2005-10-10 10:39
肖走
Rank: 1
等 级:新手上路
帖 子:85
专家分:0
注 册:2005-9-26
收藏
得分:0 
两位都没有看清楚我的问题request.form("年")在分页的第一页可以正确传递过来,主要是分页的下一页、最后一页之类的无法得到表单数据!

2005-10-10 10:49
盖茨他爹
Rank: 6Rank: 6
等 级:贵宾
威 望:28
帖 子:5255
专家分:0
注 册:2005-5-3
收藏
得分:0 
request.form接收的是表单传过来的数据,而分页的数据是在地址中传递的,当然收不到了用
request("年")
2005-10-10 10:56
rainic
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:2367
专家分:0
注 册:2005-8-9
收藏
得分:0 
我是珠海的嘛
我想那样就要用SESSION把request.form("年")保存起来了

2005-10-10 11:00
快速回复:[求助]算是参数传递问题吧
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.050986 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved