Slettet bruger
21. april 2007 - 10:18
Der er
24 kommentarer og 3 løsninger
"Order by" hjælp
Jeg har en table. Den viser 3 koloner. Jeg vil gerne have det sådan, at når man trykke på overskriften for en kolone, så sortere den efter den. Det vil sige hvis man trykker på Titel så sotere den efter title... osv... Hvordan gør man det. Jeg køre MySQL database. DDD
Annonceindlæg tema
Forsvar & beredskab
Cybersikkerhed, realtidsdata og robuste it-systemer er blevet fundamentet for moderne forsvar.
21. april 2007 - 10:28
#1
indsæt følgende ved din overskrift <a href="test.asp?kolonne=<%"kolonne"%>">overskrift</a> 'øverst på din side så følgende <% if request("kolonne") <> "" then kolonne = request("kolonne") strSQL = "Select * from dindatabase order by "& kolonne &"" else strSQL = "Select * from dindatabase" 'og så kommer det du plejer
21. april 2007 - 10:29
#2
test.asp skal udskiftes med det din side hedder
21. april 2007 - 10:40
#3
<% 'array dim id(3) ' Changing order ved hjælp af en array og session som skal huske hvad brugereren trykkede på sidst upOrDown = "asc" for t = 1 to 4 find = "id("&t&")" if request.QueryString(find) <> "" then sortItOut = request.QueryString(find) flag = true if session("knap") = "asc" then session("knap") = "desc" upOrDown = "desc" else session("knap") = "asc" end if end if next if not flag then sortItOut = "Dato" UpOrDown = "desc" end if %> //Du må selv lige forbinde til din server. <%SQL = ("select * from besked ORDER BY "&sortItOut & " "&upOrDown&"")%> <!--Table til at forklare titlerne i databasen, plus hjælpe med at variablerne sortItOut og upOrDown virker --> <table> <tr> <td><a href="<%=request.ServerVariables("URL")%>?id(1)=Navn">Navn</a></td> <td><a href="<%=request.ServerVariables("URL")%>?id(2)=Firma">Branche</a></td> <td ><a href="<%=request.ServerVariables("URL")%>?id(3)=Dato">Dato</a></td></tr> </table> Dette er godt nok til Access, men pricipperne er der. Som du kan se er der 3 overskrifter man kan vælge imellem om de vil være asc eller desc.
Slettet bruger
21. april 2007 - 10:43
#4
Den brokker sig over denne linje: <a href="index.asp?title=<%"title"%>"><font face="verdana" size="2"><b><%=rs("title").Value %></b> <i>(<%=rs("titleDK").Value %>)</i></font></a>
21. april 2007 - 10:46
#5
<a href="index.asp?title=<%="title"%>"><font face="verdana" size="2"><b><%=rs("title")%></b> <i>(<%=rs("titleDK").Value %>)</i></font></a>
21. april 2007 - 10:47
#6
' hov sådan <a href="index.asp?title=<%="title"%>"><font face="verdana" size="2"><b><%=rs("title")%></b> <i>(<%=rs("titleDK")%>)</i></font></a>
Slettet bruger
21. april 2007 - 11:00
#7
Hehe det er godt... Jeg er ikke helt vågn... JEg havde da også sat den ind forkert.. Den virker heller ikke her: <a href="index.asp?title=<%"title"%>"><font face="verdana" size="4"><b>Navn</b></a> selvm der i toppen står: Set conn = Server.CreateObject("ADODB.Connection") conn.Open strConnection strQuery = "SELECT * FROM Liste Order By Tilfoejet Desc" Set rs = Conn.Execute(strQuery) if request("title") <> "" then title = request("title") strSQL = "Select * from Film order by "& title &"" else strSQL = "Select * FROM Film Order By Tilfoejet Desc" end if DDD
Slettet bruger
21. april 2007 - 11:11
#8
jansangill --> Jeg er desværre for nOOb til at kunne finde ud af den der. DDD
21. april 2007 - 11:27
#9
'du skal se dig for der mangler flere = Den virker heller ikke her: <a href="index.asp?title=<%="title"%>"><font face="verdana" size="4"><b>Navn</b></a> Set conn = Server.CreateObject("ADODB.Connection") conn.Open strConnection strQuery = "SELECT * FROM Liste Order By Tilfoejet Desc" Set rs = Conn.Execute(strQuery) if trim(request("title")) <> "" then title = request("title") strSQL = "Select * from Film order by "& title &"" else strSQL = "Select * FROM Film Order By Tilfoejet Desc" end if
21. april 2007 - 11:30
#10
'sådan skal den være <a href="index.asp?title=<%="title"%>"><font face="verdana" size="4"><b>Navn</b></a> Set conn = Server.CreateObject("ADODB.Connection") conn.Open strConnection if trim(request("title")) <> "" then title = request("title") strQuery = "Select * from Film order by "& title &"" Set rs = Conn.Execute(strQuery) else strQuery = "Select * FROM Film Order By Tilfoejet Desc" Set rs = Conn.Execute(strQuery) end if
Slettet bruger
21. april 2007 - 11:34
#11
Det = havde jeg overset. Nice.. Nu er navn blevet et link. Men når jeg trykker på det sker der bare ikke noget. Den viser stadig efter tilfoejelse.
21. april 2007 - 11:38
#12
'prøv lige at udskrift title response.write request("title") ' for at se om der er noget med if trim(request("title")) <> "" then title = request("title") strQuery = "Select * from Film order by "& title &"" Set rs = Conn.Execute(strQuery) else strQuery = "Select * FROM Film Order By Tilfoejet Desc" Set rs = Conn.Execute(strQuery) end if
21. april 2007 - 11:38
#13
udskrift -> udskrive UPS
Slettet bruger
21. april 2007 - 11:51
#14
Hmm underligt.. Når jeg indsætter det du lige skrev. Så virker det. Men jeg kan ikke slette den gamle, så virker det ikke. nu står der alt det her: Set conn = Server.CreateObject("ADODB.Connection") conn.Open strConnection strQuery = "SELECT * FROM Film Order By Tilfoejet Desc" Set rs = Conn.Execute(strQuery) if request("title") <> "" then title = request("title") strSQL = "Select * from Film order by "& title &"" else strSQL = "Select * FROM Film Order By Tilfoejet Desc" end if if trim(request("title")) <> "" then title = request("title") strQuery = "Select * from Film order by "& title &"" Set rs = Conn.Execute(strQuery) else strQuery = "Select * FROM Film Order By Tilfoejet Desc" Set rs = Conn.Execute(strQuery) end if
Slettet bruger
21. april 2007 - 11:57
#15
Kan det ikke forkortes?? DDD
21. april 2007 - 12:01
#16
'forstår ikke helt hvad du mener - hvis du sætter den således virker den så eller hva? Set conn = Server.CreateObject("ADODB.Connection") conn.Open strConnection if trim(request("title")) <> "" then title = request("title") strQuery = "Select * from Film order by "& title &"" Set rs = Conn.Execute(strQuery) else strQuery = "Select * FROM Film Order By Tilfoejet Desc" Set rs = Conn.Execute(strQuery) end if
Slettet bruger
21. april 2007 - 12:09
#17
Ahhh ja okay.. nu virker det.. Jeg havde skrevet det he: Set conn = Server.CreateObject("ADODB.Connection") conn.Open strConnection strQuery = "SELECT * FROM Film Order By Tilfoejet Desc" Set rs = Conn.Execute(strQuery) if trim(request("title")) <> "" then title = request("title") strQuery = "Select * from Film order by "& title &"" Set rs = Conn.Execute(strQuery) else strQuery = "Select * FROM Film Order By Tilfoejet Desc" Set rs = Conn.Execute(strQuery) Det virkede ikke.. Men hvad gør man så hvis den næste kolone skal flettes ind. Så hvis man trykker på Tilføjet så sotere den efter nyest film? DDD
21. april 2007 - 12:28
#18
<table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td><a href="index.asp?title=<%="Title"%>">Titel</a></td> <td><a href="index.asp?title=<%="Tilfoejet"%>">Tilføjet</a></td> <td><a href="index.asp?title=<%="link 3"%>">link 3</a></td> </tr> osv.... du skal kun rette i dine linkoverskrifter og huske at variablen title skal have korrekt kolonne navn </table>
Slettet bruger
21. april 2007 - 12:36
#19
Hvordan sætter jeg tilføj ind i denne: if trim(request("title")) <> "" then title = request("title") strQuery = "Select * from Film order by "& title &"" Set rs = Conn.Execute(strQuery) Skal jeg sætte et else eller et or ind i midten? if trim(request("title")) <> "" then title = request("title") ----- or trim(request("Tilfoejet")) <> "" then title = request("Tilfoejet") ----- strQuery = "Select * from Film order by "& title &"" Set rs = Conn.Execute(strQuery)
Slettet bruger
21. april 2007 - 12:37
#20
Ahhh på den måde... Hehe.. nice... Takker
Slettet bruger
21. april 2007 - 12:38
#21
Jeg skulle lige gennemskue det helt.. 1000 tak
Slettet bruger
21. april 2007 - 12:40
#22
Hov jeg fandt lige en fejl... Når jeg trykker på navn vises det rigtigt. Men når jeg trykker på tilføjet så kommer de ældste først. Det skulle jo være de nyeste først. Hvis jeg bare sætter "DESC" ind så laver den Tilføjet rigtigt, men så vender navn forkert.
21. april 2007 - 12:56
#23
ja det er vel ret logisk at hvis du vælger at vise de nyeste først så er det det den sorterer efter og ikke navnet ;-))
Slettet bruger
21. april 2007 - 12:57
#24
Ja... Men hvordan vender man den? Så både navn og tilføjet passer? DDD
21. april 2007 - 13:27
#25
' så angiver du dette <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td><a href="index.asp?title=<%="Title,Tilfoejet"%>">Titel</a></td> <td><a href="index.asp?title=<%="Tilfoejet,Title"%>">Tilføjet</a></td> <td><a href="index.asp?title=<%="link 3"%>">link 3</a></td> </tr> dvs f.eks sætter du navn,tilfoejet desc - så sorterer den først på navn og derefter på tilfoejet
Slettet bruger
21. april 2007 - 13:35
#26
Nice.... rigtigt nice... 1000 1000 tak...
21. april 2007 - 13:55
#27
velbekomme og god fornøjelse
Kurser inden for grundlæggende programmering