---
title: "Plocka ut poster mellan 2 klockslag"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/39809-plocka-ut-poster-mellan-2-klockslag"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "Rossifumi"
published: "2002-03-17T10:36:29.000Z"
updated: "2002-03-17T11:07:06.000Z"
replies: 3
views: 272
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/39809-plocka-ut-poster-mellan-2-klockslag"
---

# Plocka ut poster mellan 2 klockslag

## #1 — Rossifumi, 2002-03-17T10:36Z

Hejsan jag håller på med en kalender.
För varje heltimma är uppdelad i två ([se bild](http://www.firebladeklubben.nu/images/exempel.jpg))

Mitt problem kommer när jag vill plocka ut just det klockslaget i loopen.

Kod:

```
<table width="700" border="0" cellspacing="0" cellpadding="0" align="center">
<tr>
	<td colspan="2" align="center" class="header" bgcolor="#E0DFE3" height="30" background="img/bg_head.gif"><% = sToday %></td>
</tr>
<%
datStartTid = FormatDateTime(CDate("2002-01-01 00:00"),4)
For i = 1 To 24

If Left(datStartTid,2) <= 04 OR Left(datStartTid,2) => 18 Then
	sBgImage = "img/bg_kalender_b.gif"
Else
	sBgImage = "img/bg_kalender.gif"
End If

sTid1 = datStartTid
sTid2 = FormatDateTime(DateAdd("n", 60, datStartTid),4)

SQL = "SELECT * FROM kalender WHERE Datum = sDate AND (Klockslag BETWEEN #" & sTid1 & "# AND #" & sTid2 & "#)"
Set oRS = strCon.Execute(SQL)

Response.Write "<tr>" & VbCrLf
Response.Write "<td rowspan=""2"" width=""40"" height=""40"" align=""left"" valign=""middle""><img src=""img/klockan/" & Left(datStartTid,2) & ".gif"" width=""40"" height=""40""></td>" & VbCrLf
Response.Write "<td width=""660"" height=""20"" background=""" & sBgImage & """>&nbsp;</td>" & VbCrLf
Response.Write "</tr>" & VbCrLf
Response.Write "<tr>" & VbCrLf
Response.Write "<td width=""660"" height=""20"" background=""" & sBgImage & """>&nbsp;</td>" & VbCrLf
Response.Write "</tr>" & VbCrLf

datStartTid = FormatDateTime(DateAdd("n", 60, datStartTid),4)
Next
%>
</table>
```

 

Den klagar på raden: Set oRS = ...

```
Feltyp:
Microsoft JET Database Engine (0x80040E10)
Det har inte angetts något värde för en eller flera nödvändiga parametrar.
/Default.asp, line 42
```

Är det någon som ser vad som är fel???

Permalänk: https://www.webforum.nu/p/39809

## #2 — @nders, 2002-03-17T10:42Z

Det känns som att det är följande:

```
...WHERE Datum = sDate ...
```

Är sDate ett fält i din tabell, eller en variabel?
Annars: kontrollera utskriften av SQL-frågan med Response.write.

Mvh,

Permalänk: https://www.webforum.nu/p/625040

## #3 — Rossifumi, 2002-03-17T10:56Z

OK, tack @nders...

Men nu fick jag ett annat problem...

Hela sidkoden

```
<!-- #include file = "includes/openDB.asp" -->
<%
If Request.QueryString("display_date") = "" Then
	sDate = Date
	sToday = UCase(WeekDayName(WeekDay(Now))) & "EN den " & Day(Now) & " " & MonthName(Month(Now)) & ", " & Year(Now)
End If
%>

<html>
<head>
<title>TVÅ GRÄVARE</title>

<style type="text/css">
<!--
	td,tr,body {font-family: Trebuchet MS, Verdana; font-size: 12px; color: black;}
	.header {font-family: Trebuchet MS, Verdana; font-size: 14px; color: black; font-weight: bold;}
-->
</style>

</head>

<body bgcolor="#FFFFFF">

<table width="700" border="0" cellspacing="0" cellpadding="0" align="center">
<tr>
	<td colspan="2" align="center" class="header" bgcolor="#E0DFE3" height="30" background="img/bg_head.gif"><% = sToday %></td>
</tr>
<%
datStartTid = FormatDateTime(CDate("2002-01-01 00:00"),4)
For i = 1 To 24

If Left(datStartTid,2) <= 04 OR Left(datStartTid,2) => 18 Then
	sBgImage = "img/bg_kalender_b.gif"
Else
	sBgImage = "img/bg_kalender.gif"
End If

sTid1 = datStartTid
sTid2 = FormatDateTime(DateAdd("n", 60, datStartTid),4)

SQL = "SELECT * FROM kalender WHERE Datum = #" & CDate(sDate) & "# AND (Klockslag BETWEEN #" & sTid1 & "# AND #" & sTid2 & "#)"
Set oRS = strCon.Execute(SQL)

If Not oRS.EOF Then
	sNot = oRS("Notering")
Else
	sNot = ""
End If

Response.Write "<tr>" & VbCrLf
Response.Write "<td rowspan=""2"" width=""40"" height=""40"" align=""left"" valign=""middle""><img src=""img/klockan/" & Left(datStartTid,2) & ".gif"" width=""40"" height=""40""></td>" & VbCrLf
Response.Write "<td width=""660"" height=""20"" background=""" & sBgImage & """>&nbsp;" & sNot & "</td>" & VbCrLf
Response.Write "</tr>" & VbCrLf
Response.Write "<tr>" & VbCrLf
Response.Write "<td width=""660"" height=""20"" background=""" & sBgImage & """>&nbsp;</td>" & VbCrLf
Response.Write "</tr>" & VbCrLf

datStartTid = FormatDateTime(DateAdd("n", 60, datStartTid),4)
Next
%>
</table>
</body>
</html>
```

I databasen finns två poster, en 13:00 och en 14:00.
Men ifall jag kollar på sidan nu så skrivs den 13:00 ut både 12:00, 13:00 och 23:00. Medans den 14:00 bara skrivs ut 14:00...

Varför???

Permalänk: https://www.webforum.nu/p/625045

## #4 — Rossifumi, 2002-03-17T11:07Z

Tror att jag löste det själv...

Ändrade:

```
sTid1 = datStartTid
sTid2 = FormatDateTime(DateAdd("n", 60, datStartTid),4)
```

Till:

```
sTid1 = datStartTid
sTid2 = FormatDateTime(DateAdd("n", 59, datStartTid),4)
```

Och det verkar funka...
Tack @nders  :e

Permalänk: https://www.webforum.nu/p/625047

---

Tråden på webben: https://www.webforum.nu/amne/asp/39809-plocka-ut-poster-mellan-2-klockslag
