Jag har en sida där ca: 10 lags spelare ska visas. Mitt problem är sorteringsordningen, jag vill visa trupperna efter coach, målvakt, back och forward från fältet position. ORDER BY position ger ju sorteringen i bokstavsordning. Om jag gör separata sql-satser för varje lag så blir det ju närmare 40 såna, känns osmidigt minsann... så här ser koden ut just nu:
<%
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "***;Password***"
%>
<%lag = Request.QueryString("lag")%>
<%
Select Case lag
Case "herrar"
sSQL="SELECT * FROM spelare WHERE lag ='herrar' ORDER BY position"
Case "damer"
sSQL="SELECT * FROM spelare WHERE lag ='damer' ORDER BY position"
Case "j17"
sSQL="SELECT * FROM spelare WHERE lag ='j17' ORDER BY position"
Case "f16"
sSQL="SELECT * FROM spelare WHERE lag ='f16' ORDER BY position"
End Select
%>
<TABLE WIDTH="410" BORDER="0" cellpadding="0" cellspacing="2">
<%
Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open sSQL, Conn
Do While Not rs.EOF
cnt = cnt + 1
strColor = ""
If cnt Mod 2 = 0 then strColor = "#CCCCCC"
Response.Write "<TR bgcolor='" & strColor & "'>"
%>
<TD><%=rs("nummer")%></TD><td><%=rs("position")%></TD><td><%=rs("fnamn")%> <%=rs("enamn")%></TD><td>
</TR>
<%
rs.MoveNext
Loop
rs.Close
Conn.Close
%>
Select Case lag
Case "herrar"
sSQL="SELECT * FROM spelare WHERE lag ='herrar' ORDER BY position"
Case "damer"
sSQL="SELECT * FROM spelare WHERE lag ='damer' ORDER BY position"
Case "j17"
sSQL="SELECT * FROM spelare WHERE lag ='j17' ORDER BY position"
Case "f16"
sSQL="SELECT * FROM spelare WHERE lag ='f16' ORDER BY position"
End Select
mot
sSQL="SELECT * FROM spelare WHERE lag ='" & lag & "' ORDER BY position"
Eventuellt kan du ju ha en if-sats runt för att se att det inte kommer en massa skräp, men det borde inte behövas.
Mvh,
------------------
All your base are belong to me.
Ja, det där var ju onekligen lite bättre!
Får väl grubbla vidare hur jag ska lösa sorteringen... position är ju inte tabellen utan ett fält i tabellen spelare.
<%
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "DSN=***;Password=***"
Set rs = Server.CreateObject("ADODB.Recordset")
lag = Request.QueryString("lag")
sSQL="SELELCT * FROM SPELARE WHERE lag ='" & lag & "' ORDER BY position"
%>
<TABLE WIDTH="410" BORDER="0" cellpadding="0" cellspacing="2">
<%
rs.Open sSQL, Conn
Do While Not rs.EOF
cnt = cnt + 1
strColor = ""
If cnt Mod 2 = 0 then strColor = "#CCCCCC"
Response.Write "<TR bgcolor='" & strColor & "'>"
%>
<TD><%=rs("nummer")%></TD><td><%=rs("position")%></TD><td><%=rs("fnamn")%> <%=rs("enamn")%></TD><td>
</TR>
<%
rs.MoveNext
Loop
rs.Close
Conn.Close
%>