<%Set RecSet = Conn.Execute("SELECT * FROM news WHERE ar = " & whatyearisitnow & " ORDER BY uge ASC")%>
<tr>
<td align="left" width="150">
<select name="uge">
<%
For i = 1 To 52
%>
<%If RecSet(uge) <> i Then%>
<option value="<%=i%>">Uge <%=i%></option>
<%End If%>
<%
Next 'i
%>
</select>
<%RecSet.Close
Set RecSet = Nothing%>
Meningen med den är att den inte ska skriva ut de veckor som redan existerar, varför funkar inte det?
Skapa en tabell i databasen som innehåller1 kolumn: weeknumber int.
Läg sedan in värdena 1-52.
I SQL kommandot skriver du sedan
"SELECT weeknumber from tblWeeknumbers where weeknumber NOT IN (
SELECT distinct uge FROM news WHERE ar = " & whatyearisitnow & "
) order by weeknumber asc"
Då får du enbart ut de veckonummerna som INTE finns med i News tabellen.
Och då är det bara att loop ut ditt recordset som vanligt
<%
Set RecSet = Conn.Execute("SELECT uge FROM news WHERE ar = " & whatyearisitnow & " ORDER BY uge ASC")
Dim foundWeeks
foundWeeks = ""
If NOT RecSet.EOF Then
Do Until RecSet.EOF
foundWeeks = foundWeeks & RecSet("uge")& "|"
RecSet.MoveNext
Loop
End If
RecSet.Close()
Set RecSet = Nothing
%>
<tr>
<td align="left" width="150">
<select name="uge">
<% For i = 1 To 52 %>
<% If InStr(foundWeeks,i& "|") > 0 Then%>
<option value="<%=i%>">Uge <%=i%></option>
<%End If%>
<% Next %>
</select>
<%
Set RecSet = Conn.Execute("SELECT uge FROM news WHERE ar = " & whatyearisitnow & " ORDER BY uge ASC")
Dim foundWeeks
foundWeeks = ""
If NOT RecSet.EOF Then
Do Until RecSet.EOF
foundWeeks = foundWeeks & RecSet("uge")& "|"
RecSet.MoveNext
Loop
End If
RecSet.Close()
Set RecSet = Nothing
%>
<tr>
<td align="left" width="150">
<select name="uge">
<% For i = 1 To 52 %>
<% If InStr(foundWeeks,i& "|") > 0 Then%>
<option value="<%=i%>">Uge <%=i%></option>
<%End If%>
<% Next %>
</select>
Nu visas vecka 1-19 och 21-47 ? hur går det till? vecka 1-17 existerar ju inte..
<%
Set RecSet = Conn.Execute("SELECT uge FROM news WHERE ar = " & whatyearisitnow & " ORDER BY uge ASC")
Dim foundWeeks
foundWeeks = ""
If NOT RecSet.EOF Then
Do Until RecSet.EOF
foundWeeks = foundWeeks & RecSet("uge")& "|"
RecSet.MoveNext
Loop
End If
RecSet.Close()
Set RecSet = Nothing
%>
<tr>
<td align="left" width="150">
<select name="uge">
<% For i = 1 To 52 %>
<% If InStr(foundWeeks,i& "|") = 0 Then%>
<option value="<%=i%>">Uge <%=i%></option>
<%End If%>
<% Next %>
</select>
259 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849