webForumDet fria alternativet

loop i loopen

ASP

4 svar · 292 visningar · startad av evesve

Medlem sedan sep. 2001163 inlägg
Frågan#1

Hej!
Jag har knyckt en kalender som visar dagens datum.
Jag har lagt till att den ska visa rubriker (RS("Rubrik") för inlagda händelser i datumrutan.
Så långt fungerar det bra.
Problemet är om jag lagt i flera händelser samma dag.
Då kommer bara första händelsens rubrik med.
Alltså måste jag få in en loop i loopen.
Nån som kan hjälpa mig?

<%SET RS = Conn.Execute("Select * From cal_Mess Where  manad= " & manad & "")

If Int(Dag) = Int(dagar)+1 Then%>
  <td>&nbsp;</td>
<%Else
   If i >= sn Then
      If dagens = datum Then
         RS.Filter = "datum = #" & dagens & "#"%>
            <td>
               <%If RS.EOF Then%>
                <%=Dag%>
               <%Else
                  If RS("datum") < date() Then%>
                   <%=Dag%>
                  <%Else
                  If Request.QueryString("date") <> "" Then%>
                 <%=Dag%>
                  <%Else%>
                  <%=Dag%><BR><%=RS("Rubrik")%>
                  <%End If
                 End If
               End If%>
            </td>
    <%Else
         RS.Filter = "datum = #" & dagens & "#"
            If RS.EOF Then%>
               <td>
                  <%=Dag%>
               </td>
	     <%Else%>
               <td>
                  <%If RS("datum") < date() Then%>
                  <%=Dag%><BR>z_<%=RS("Rubrik")%>
                  <%Else%>
                  <%If Request.QueryString("date") <> "" Then%>
                    <%=Dag%><BR><%=RS("Rubrik")%>
                  <%Else%>
                    <%=Dag%><BR><%=RS("Rubrik")%>
                  <%End If
                 End If%>
               </td>
            <%End If
      End If
   Dag = Dag + 1
   dagens = DateAdd("d", 1, dagens)
   Else%>
      <td>&nbsp;</td>
   <%End If
End If%>
<%Next
sn = 1%>
<TD>w.<%=vecka +vka%></TD>
<%vka = vka+1%>
</tr>
<%If Int(Dag) = Int(dagar)+1 Then
   Exit For
End If

Next%>
Medlem sedan feb. 200112 078 inlägg
#2

Skapa två recordset istället, ett som visar alla poster och ett som visar underposter.

Annars håller jag med LarsG som en gång sade; metoden filter går att använda, men den bör inte användas. ;)

Medlem sedan sep. 2001163 inlägg
#3

OveRRidE skrev:

Skapa två recordset istället, ett som visar alla poster och ett som visar underposter.

Jo, det är just problemet med hur dom två recordseten jobbar tillsammans som jag inte får till att fungera.
Nån som har ett enkelt grundexempel?

Medlem sedan nov. 20014 054 inlägg
#4
 ' SQL-sats för att plocka ut evenemang
	 Set rs = Server.CreateObject("ADODB.RecordSet")
	 SQL = "SELECT id, col_rubrik from tbl_kalender WHERE col_year=" & curYear & " AND col_month=" & curMonth  & " AND col_day=" & currentDay & " AND col_accepted=1"
	 rs.Open SQL, MyConn
	 
	 if rs.eof then
	 
	 else
	 Do until rs.eof
	 Response.Write("&#8226;&nbsp;<a href=""javascript:evenemang('kalender.asp?col_id=" & rs("id") & "');"">" & rs("col_rubrik") & "</a><br />")
	 rs.MoveNext
	 Loop
	 end if

Vet inte om detta hjälper dig, men min kalender som jag har skapat.. visar alla rubriker under varje dag...

Medlem sedan sep. 2001163 inlägg
#5

Tackar!!!!!!
Det kom direkt!
Hade missat ett "Do untill..."

253 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
127 ms — deklarationer (db)
0 ms — hämta statistik (cache)
122 ms — hämta tråd, inlägg och bilagor (db)
128 ms — ändringar (db)