skulle vilja lista en användares alla inlägg månadsvis, nuvarande månaden ska alla inläggs titel o datum skrivas ut, men tidigare månader ska finnas textlänkar "september" "augusti" osv och när dessa klickas ska alla meddelanden skrivna den månaden listas med titel och datum.
Tanken är att man har en sida, show.asp dit man skickar år och månad i querystring
<%
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
set connect = server.createobject("adodb.connection")
connect.open dsn
sql = "select * from posts " & _
" where month(postdate) = " & m &_
" and year(date) = " & y & _
" and poster = '" & user & "'"
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(postDate),month(postDate) from posts " & _
" where month(postdate) <> " & m & _
" and year(postdate) <> " & y & _
" and poster = '" & user & "'"
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
connect.close
set connect = nothing
Du får kanske byta ut funktionerna month och year beroende på vilken databas du använder. (De finns i Access och SQL-server.)
Okej, då är det något problem med sql-satsen. Felmeddelandet tyder på att det är Access och det brukar bero på att man anger något kolumnnamn som inte finns i tabellen.
Kan du visa sql-satsen, dvs att du skriver ut den
response.write sql
Sen så är date ett reserverat ord så att om du anväder det i sql-satser så får du skriva
okej, nu löste det sig (hrm.. )
men "too few parameters, expected 2" kvartstår..
det är den här raden som sägs vara trasig:
set rs = connect.execute(sql)
m = request.querystring("month")
if m = "" then m = month(date)
y = request.querystring("year")
if y = "" then y = year(date)
user = session("user")
det är ovanstående "user = " som jag vill sätta till användaren vars sida man besöker
'lista alla inlägg för aktuell månad
response.write sql
sql = "select * from k_messages " & _
" where month(date) = " & m &_
" and year(date) = " & y & _
" and name = '" & user & "'"
set rs = connect.execute(sql)
while not rs.eof
'visa data
rs.movenext
wend
rs.close
'ta alla månader som inte ingår
response.write sql
sql = "select distinct year(Date),month(Date) from k_messages " & _
" where month(date) <> " & m & _
" and year(date) <> " & y & _
" and name = '" & user & "'"
precis här finns ju name = '" & user & "'"
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
260 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a