---
title: "paging enligt månader"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/12040-paging-enligt-månader/page2"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "laidback"
published: "2001-10-09T12:22:00.000Z"
updated: "2001-10-11T08:25:00.000Z"
replies: 36
views: 328
page: 2
pages: 2
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/12040-paging-enligt-månader"
---

# paging enligt månader

_Sida 2 av 2._

## #21 — LarsG, 2001-10-09T21:03Z

> det är ovanstående "user = " som jag vill sätta till användaren vars sida man besöker

Vart finns det användarnamnet?

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

## #22 — laidback, 2001-10-09T21:07Z

i tabellen k_messages i fältet "name", och det är på utvald användares sida man befinner sig och vill se inläggen. 
en variabel "current" är deklarerad tidigare, som innehåller just detta namn. hur anropar jag detta?

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

## #23 — LarsG, 2001-10-09T21:12Z

Då borde det bara vara att byta user mot current i de båda sql-satserna

```
sql = "select * from k_messages " & _
" where month(date) = " & m &_
" and year(date) = " & y & _
" and name = '" & current & "'"
response.write sql
```

och

```
'ta alla månader som inte ingår 
sql = "select distinct year(Date),month(Date) from k_messages " & _
" where month(date) <> " & m & _
" and year(date) <> " & y & _
" and name = '" & current & "'"
response.write sql
```

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

## #24 — laidback, 2001-10-09T21:20Z

set rs = connect.execute(sql)

får " Data type mismatch in criteria expression."

tror jag måste sova lite.. :/

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

## #25 — LarsG, 2001-10-09T21:23Z

Ok, men jag vill fortfarande se resultatet av 

response.write sql

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

## #26 — laidback, 2001-10-09T21:27Z

resultatet bli endast
Error Type:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E07)
\[Microsoft\]\[ODBC Microsoft Access Driver\] Data type mismatch in criteria expression.

om jag skriver ut response.write sql som, du gjort ovan.

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

## #27 — LarsG, 2001-10-09T21:32Z

I den kod du visade så hade du 

```
response.write sql
sql = "select * from k_messages " & _
" where month(date) = " & m &_
" and year(date) = " & y & _
" and name = '" & current & "'"
```

och då är variablen sql odefinierad.

Om du lägger response.write efter tilldelningen så borde du få ut något.

```
sql = "select * from k_messages " & _
" where month(date) = " & m &_
" and year(date) = " & y & _
" and name = '" & current & "'"
response.write sql
```

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

## #28 — laidback, 2001-10-09T21:37Z

hm. samma fel visas om jag lägger den efter. 

nu ser koden ut så här 

```

<%

m = request.querystring("month")
if m = "" then m = month(date)
y = request.querystring("year")
if y = "" then y = year(date)
user = session("user")

'lista alla inlägg för aktuell månad

sql = "select * from k_messages " & _
" where month(date) = " & m &_
" and year(date) = " & y & _
" and name = '" & current & "'"
response.write sql

set rs = connect.execute(sql)
while not rs.eof
'visa data
rs.movenext
wend
rs.close

'ta alla månader som inte ingår 

sql = "select distinct year(Date),month(Date) from k_messages " & _
" where month(date) <> " & m & _
" and year(date) <> " & y & _
" and name = '" & current & "'"
response.write sql

set rs = connect.execute(sql)
while not rs.eof
response.write "<a href=show.asp?month='" & rs(0) & "'&year='" & rs(1) &"'>" & _
monthname(rs(0)) & " " & rs(1) & "</a>"
rs.movenext
wend
rs.close
set rs = nothing 

%>
```

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

## #29 — LarsG, 2001-10-09T21:56Z

Det kan vara något problem med att date är ett reserverat ord i Access

```
<%

m = request.querystring("month")
if m = "" then m = month(date)
y = request.querystring("year")
if y = "" then y = year(date)
user = session("user")

'lista alla inlägg för aktuell månad

sql = "select * from k_messages " & _
" where month([date]) = " & m &_
" and year([date]) = " & y & _
" and name = '" & current & "'"
response.write sql

set rs = connect.execute(sql)
while not rs.eof
'visa data
rs.movenext
wend
rs.close

'ta alla månader som inte ingår 

sql = "select distinct year(Date),month(Date) from k_messages " & _
" where month([date]) <> " & m & _
" and year([date]) <> " & y & _
" and name = '" & current & "'"
response.write sql
```

(Jag menade inte att det skulle avhjälpa felet att flytta på response.write, bara att sql skulle få ett värde innan utskriften.)

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

## #30 — laidback, 2001-10-10T16:52Z

men.. \*lite sömn senare\*
ursprungligen såg det ut så här :

```

<% View = "SELECT * FROM k_messages ORDER BY ID DESC"
RecSet.Open View, Connect, adOpenStatic, adLockOptimistic

Do Until RecSet.EOF %>

<% If RecSet("name")=current<% =RecSet("date")%>
&nbsp; 

[<A href="view_message.asp?messID=<% =RecSet("ID") %>"><% =RecSet("title")%></A>]
<% End If %>
<%
RecSet.MoveNext
Loop
RecSet.Close %>
```

och detta visade då gällande användares alla inlägg. 
går det inte att skriva 
View = "SELECT \* FROM k_messages ORDER BY ID DESC"
where månaden är den som är nu?

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

## #31 — LarsG, 2001-10-10T18:49Z

Jo, det var det som var tanken

```
m = request.querystring("month")
if m = "" then m = month(date)
y = request.querystring("year")
if y = "" then y = year(date)
user = session("user")

'lista alla inlägg för aktuell månad

sql = "select * from k_messages " & _
" where month([date]) = " & m &_
" and year([date]) = " & y & _
" and name = '" & current & "'"
response.write sql

set recset = connect.execute(sql)
while not recset.eof
%>
[<A href="view_message.asp?messID=<% =RecSet("ID") %>"><% =RecSet("title")%></A>]

recset.movenext
wend
rs.close
```

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

## #32 — laidback, 2001-10-10T20:25Z

hm. fortfarande fel på sql-satsen enligt felmeddelandena. 
"data type mismatch"
borde jag nämna att "date" är ett textfält? :r

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

## #33 — LarsG, 2001-10-10T20:31Z

Ja.

Kan du byta till date?

Om inte, i vilket format ligger datumet lagrat.

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

## #34 — laidback, 2001-10-10T22:22Z

hm. helst inte?

för att få datumet i ett trevligt format skickas följande till date-fältet när man gör ett inlägg:

```
<input type="hidden" name="date" size="15" value="<%=Right("0" & Day(Now),2)%>&nbsp;<% =LCase(Monthname(Month(Now), True))%>&nbsp;<% =Year(Now)%>&nbsp;-&nbsp;<%=Right("0" & Hour(Now),2)%>:<%=Right("0" & Minute(Now),2)%>">
```

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

## #35 — LarsG, 2001-10-11T07:15Z

Jag tycker i alla fall att du skall byta till date och lagra värdet av now() i databasen och sedan göra din formattering när du visar data.

I och för sig går det att skriva ett uttryck med like som matchar år och månad i textfältet men jag tycker att det är onödigt.

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

## #36 — laidback, 2001-10-11T08:11Z

så hur skulle det se ut då? kodmässigt och utskriftsresultat.

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

## #37 — LarsG, 2001-10-11T08:25Z

Det blir samma formattering som tidigare oavsett om du hämtar från databasen

```
<% d = cdate(recset("date")) %>
<input type="hidden" name="date" size="15" value="<%=Right("0" & Day(d),2)%> <% =LCase(Monthname(Month(d), True))%> <% =Year(d)%> - <%=Right("0" & Hour(d),2)%>:<%=Right("0" & Minute(d),2)%>">
```

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/12040-paging-enligt-månader/page2  
Föregående sida: https://www.webforum.nu/amne/asp/12040-paging-enligt-månader.md
