| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3179 人关注过本帖, 1 人收藏
标题:按时间段查询的问题!
只看楼主 加入收藏
wwm123456789
Rank: 4
等 级:业余侠客
帖 子:63
专家分:204
注 册:2010-4-4
结帖率:92.86%
收藏(1)
已结贴  问题点数:20 回复次数:11 
按时间段查询的问题!
(1)asp+access,一个按时间段查询的问题!
(2)表名是lyb,其中有一个字段名是lysj,是时间日期格式,如2011-4-5.
(3)要求是在两个文本框里分别输入起止时间,然后输出在这两个时间段内的所有记录。
(4)两个文本框的id分别是data1和data2,
(5)代码是
<!--#include file="..\aspcon.asp"-->
  <html>   
  <head>   
  <title>耗材领用情况</title>   
  <meta http-equiv="Content-Type" content="text/html; charset=gb2312"></head>   
  <body   bgcolor="#FFFFFF" link="#0000FF" vlink="#0000FF" alink="#FF0000">
 <center>
  <h1>耗材领用情况汇总</h1>
  <p><a href="fxcx.htm">(分项查询)</a><a href="sum.asp">(统计输出)</a><a href="time.asp">(分时段查询)</a></p>
  <a href="..\dlcg.asp">返回前页</a>
 </center>
<table   border=1   cellspacing=0   cellpadding=0   bordercolor=#000000   align=center>
  <tr>
    <td><font size="+2">编号</font></td>
    <td><font size="+2">材料名称</font></td>
    <td><font size="+2">型号品牌</font></td>
    <td><font size="+2">单位</font></td>
    <td><font size="+2">数量</font></td>
    <td><font size="+2">用途</font></td>
    <td><font size="+2">领用人</font></td>
    <td><font size="+2">保管人</font></td>
    <td><font size="+2">领用时间</font></td>
    <td><font size="+2">操作1</font></td>
    <td><font size="+2">操作2</font></td>
    </tr>
<%
data1=CDate(request.Form("data1"))
data=CDate(request.Form("data2"))
set rs=server.createobject("adodb.recordset")
sql="select * from lyb where lysj between  #"&data1&"# and #"&data2&"#"
rs.open sql,conn,1,1
if rs.eof then
    response.write "暂无记录!"
    response.end
    end if   
  %>      
<%
page=1    ' 设置变量PAGE=1
rs.PageSize = 20 '每页显示记录数
if Not IsEmpty(Request("Page")) then '如果PAGE已经初始化...
Page = CInt(Request("Page")) '接收PAGE并化为数字型赋给PAGE变量
if Page > rs.PageCount then '如果接收的页数大于总页数
rs.AbsolutePage = rs.PageCount '设置当前显示页等于最后页
elseif Page <= 0 then '如果page小于等于0
Page = 1 '设置PAGE等于第一页
else
rs.AbsolutePage = Page '如果大于零,显示当前页等于接收的页数
end if
End if
Page = rs.AbsolutePage
%>
<%
For i = 1 to rs.PageSize
if rs.EOF then     
Exit For
end if '利用for next 循环依次读出记录
%>
<tr>
    <td><%=rs("id")%></td>
    <td><%=rs("name")%></td>
    <td><%=rs("xh")%></td>
    <td><%=rs("dw")%></td>
    <td><%=rs("sl")%></td>
    <td><%=rs("yt")%></td>
    <td><%=rs("lyr")%></td>
    <td><%=rs("bgr")%></td>
    <td><%=rs("lysj")%></td>
    <td><a href="lyedit.asp?id=<%=rs("id")%>">修改</a></td>
    <td><a href="javascript:if (confirm('确定要删除该记录?')) {location.href='lydelet.asp?id=<%=rs("id")%>'}">
删除</a></td>
  </tr>
<%
rs.MoveNext
next
%>
 </table>
<center>
<%if request("page")>1 then%>
<a Href="lingyonglist.asp?Page=<% = 1%>">首页</a>
<a Href="lingyonglist.asp?Page=<% =request("page") -1 %>">上一页</a>
<%end if %>
<%if request("page")<>rs.pagecount then %>
<a Href="lingyonglist.asp?Page=<% =request("page") + 1%>">下一页</a>
<a Href="lingyonglist.asp?Page=<% = rs.PageCount%>">尾页</a>
<% end if %>
</center>
<%
rs.close
Set rs = Nothing
conn.close
set conn=nothing
%>
<p>&nbsp;</p>
</body>   
</html>
(6)没有提示出错,但总是显示“暂无记录!”   
按照论坛里相关的帖子提示做了尝试,但一直没成功,希望各位指教,谢谢!

[ 本帖最后由 wwm123456789 于 2011-5-8 12:54 编辑 ]
搜索更多相关主题的帖子: content 时间段 文本框 link 耗材 
2011-05-08 07:48
lxd0980
Rank: 7Rank: 7Rank: 7
来 自:湖南长沙
等 级:黑侠
帖 子:166
专家分:505
注 册:2011-3-27
收藏
得分:10 
<%
data1=request("data1") '
data2=request("data2") '
set rs=server.createobject("adodb.recordset")
sql="select * from lyb where lysj between  #"&cdate(date1)&"# and #"&cdate(date2)&"#"
rs.open sql,conn,1,1
%>
<table>
<tr>
<%for ecah item  in fields%>
<td><%=item.Name%></td>
<%next%>
</tr>

<%do until rs.eof%>
<tr>
<%for ecah item  in fields%>
<td><%=item.Name%></td>
<%
rs.MoveNext
next
</tr>
else
response.write"<tr><td> 暂无记录 </td></tr>"
rs.close
Set rs = Nothing
conn.close
set conn=nothing

%>
</table>




2011-05-08 11:52
wwm123456789
Rank: 4
等 级:业余侠客
帖 子:63
专家分:204
注 册:2010-4-4
收藏
得分:0 
谢谢lxd0980,但问题仍没解决,我将代码全部贴上去了,希望大家帮我看看,谢谢了,我的感觉好像是值没有传递过来!
2011-05-08 12:57
lxd0980
Rank: 7Rank: 7Rank: 7
来 自:湖南长沙
等 级:黑侠
帖 子:166
专家分:505
注 册:2011-3-27
收藏
得分:0 
你看下你那个 if rs.EOF then   两个都是一样的。 把第二个改成 if rs.bof then
2011-05-08 13:58
wwm123456789
Rank: 4
等 级:业余侠客
帖 子:63
专家分:204
注 册:2010-4-4
收藏
得分:0 
谢谢lxd0980,该过来做了测试,仍如前!弄了几天,查了不少资料,仍没解决!
如果将sql="select * from lyb where lysj between  #"&data1&"# and #"&data2&"#"
改成sql="select * from lyb where lysj between  #2011-4-30# and #2011-5-1#"就有输出了!
2011-05-08 14:10
lxd0980
Rank: 7Rank: 7Rank: 7
来 自:湖南长沙
等 级:黑侠
帖 子:166
专家分:505
注 册:2011-3-27
收藏
得分:0 
查看下你数据库里的时间段的格式是不是这样2011-4-30的,
2011-05-08 15:37
wangjy500
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:13
帖 子:457
专家分:2569
注 册:2010-7-11
收藏
得分:10 
那就看下data1和data2有没有传过来值。
Response.write data1
Response.write data1
Response.End()

QQ:63572063
2011-05-08 15:58
wwm123456789
Rank: 4
等 级:业余侠客
帖 子:63
专家分:204
注 册:2010-4-4
收藏
得分:0 
回复 6楼 lxd0980
是这样的格式!
2011-05-08 18:16
wwm123456789
Rank: 4
等 级:业余侠客
帖 子:63
专家分:204
注 册:2010-4-4
收藏
得分:0 
以下是引用wangjy500在2011-5-8 15:58:39的发言:

那就看下data1和data2有没有传过来值。
Response.write data1
Response.write data1
Response.End()
值没有传过来,那是怎么回事呢?
2011-05-08 18:32
wwm123456789
Rank: 4
等 级:业余侠客
帖 子:63
专家分:204
注 册:2010-4-4
收藏
得分:0 
以下是引用lxd0980在2011-5-8 15:37:30的发言:

查看下你数据库里的时间段的格式是不是这样2011-4-30的,
是这样的格式!!
2011-05-08 18:34
快速回复:按时间段查询的问题!
数据加载中...
 
   



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

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