Tjoho! Borde funka om du lägger till en extra parameter i url och kollar den när du skall köra din sql. du menade ... eller? Vad skall detta in?? tänk att jag är nybörgare på detta och inte fattar så mycket :-) Dj, stämmer, tryckfelsnisse var framme... jag fattar inte vart den tabellen skall in, är det så här det skall se ut?? Du har ju en tabell med överskrifter okej nu har jag denna kod jag får inga fel men jag ser inget av tabellen :-( Har du kollat så att du får OK HTML via w3c? Du bör lägga in rätt encoding och doctype på sidan. http://test.profilmakarna.com/display/1index.asp Är du säker på att det är rätt kod du visar? Jag har inte satt mig in i ovanstående inlägg, men om du vill sortera stigande respektive fallande gör så här:Sortera från A-Ö & Ö-A
jag skulle vilja ha hjälp med en kod som gör att man kan sortera fallande/stigande genom att klicka på de rubriker som finns för varja kolum. Jag vet att det funkar men jag har inte en aning om hur man skall göra.
//Tommy Lindblom
<code><%
Session.LCID = 1053
'skapar en databaskoppling.
set conn = Server.CreateObject("adodb.connection")
conn.open "Provider=Microsoft.Jet.OleDB.4.0; Data Source=" & Server.MapPath("db/inlagg.mdb")
'Skapar ett recordset för att spara inläggen.
set spara = Server.CreateObject("adodb.recordset")
'Skapar ett recordset för att visa inläggen.
Const perSida = 3
Dim onPage
if Request.QueryString("onPage") = "" then
onPage = 1
else
onPage = Request.QueryString("onPage")
end if
set visa = Server.CreateObject("adodb.recordset")
%>
<!--*******************************************************************-->
<link href="pagestyle.css" rel="stylesheet" type="text/css">
</head>
<body>
<table width="799" border="0" align="center" cellpadding="0" cellspacing="2">
<tr>
<td valign="top">
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr align="left" valign="top" class="brodtext">
<td width="11" height="15"></td>
<td width="196" height="15"><strong>Namn</strong></td>
<td width="163" height="15"><strong>Skärmstorlek</strong></td>
<td width="354" height="15"><strong>Färger</strong></td>
</tr>
</table>
<div align="center"> </div>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<%
sqlVisa = "SELECT * FROM TFT ORDER BY ID Desc"
visa.open sqlVisa, conn, 1
if not visa.eof then
visa.PageSize = perSida
visa.Absolutepage = onPage
Dim totalPages
totalPages = visa.PageCount
Dim raknare
raknare = 0
Do while not visa.EOF and raknare < visa.PageSize
%>
<tr align="left" valign="top" class="txt9">
<td width="11" valign="middle"><img src="img/jpg.gif" width="7" height="10"></td>
<td width="196"><%=visa("TFTnamn")%></td>
<td width="163"><%=visa("Skärmstorlek")%></td>
<td width="354"><%=visa("Färger")%></td>
</tr>
<%
raknare = raknare + 1
visa.movenext
loop
else
%>
<div class="brodtext"><b>Det finns inga inlägg att visa.</b></div>
<%
end if
%>
</table>
<%=totPages%>
<%
Dim Pages
if totalPages > 1 then%>
<%for Pages = 1 to totalPages%>
<%=Pages%>
<%
next
end if%>
<p>
<%
SQL ="SELECT COUNT(*) AS totPosts FROM TFT"
conn.Execute(SQL)
%>
</p>
<p class="brodtext"><font color="#000000"><%=totPosts%></font></p>
<p class="brodtext">
<%
%>
</p>
</td>
</tr>
</table>
<%
visa.close
set visa = nothing
conn.close
set conn = nothing
%></code>Sv: Sortera från A-Ö & Ö-A
<code>
strSort = Request.Querystring("sort")
Select Case sort
Case "IdDesc"
sqlVisa = "SELECT * FROM TFT ORDER BY ID Desc"
Case "NamnDesc"
sqlVisa = "SELECT * FROM TFT ORDER BY Name Desc"
Case "FargDesc"
sqlVisa = "SELECT * FROM TFT ORDER BY Farg Desc"
' och sedan bygga vidare på de sorteringsordningar du vill ha
</code>Sv: Sortera från A-Ö & Ö-A
<code>
strSort = Request.Querystring("sort")
Select Case strSort <------ here
Case "IdDesc"
sqlVisa = "SELECT * FROM TFT ORDER BY ID Desc"
Case "NamnDesc"
sqlVisa = "SELECT * FROM TFT ORDER BY Name Desc"
Case "FargDesc"
sqlVisa = "SELECT * FROM TFT ORDER BY Farg Desc"
' och sedan bygga vidare p� de sorteringsordningar du vill ha
</code>Sv: Sortera från A-Ö & Ö-A
//TommySv: Sortera från A-Ö & Ö-A
Den koden skall in där du har din sqlsats nu. (sqlVisa = "SELECT * FROM TFT ORDER BY ID Desc" )
Sedan för du göra om dina kolumnheaders så att dom blir en klickbar länk som pekar på samma sida, men med utbyggd querystring.
<code>
<td width="196" height="15"><strong>Namn</strong></td>
</code>Sv: Sortera från A-Ö & Ö-A
<code>strSort = Request.Querystring("sort")
Select Case strSort <td width="196" height="15"><strong>Namn</strong></td>
Case "IdDesc"
sqlVisa = "SELECT * FROM TFT ORDER BY ID Desc"
Case "NamnDesc"
sqlVisa = "SELECT * FROM TFT ORDER BY Name Desc"
Case "FargDesc"
sqlVisa = "SELECT * FROM TFT ORDER BY Farg Desc" </code>Sv: Sortera från A-Ö & Ö-A
<code>
<body>
<table width="799" border="0" align="center" cellpadding="0" cellspacing="2">
<tr>
<td valign="top">
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr align="left" valign="top" class="brodtext">
<td width="11" height="15"></td>
<td width="196" height="15"><strong>Namn</strong></td>
<td width="163" height="15"><strong>Skärmstorlek</strong></td>
<td width="354" height="15"><strong>Färger</strong></td>
</tr>
</table>
</code>
Där skall koden in för den rad jag skrev innan (obs jag skrev bara ett exempel för en tdrad)Sv: Sortera från A-Ö– & Ö-A
har adressen så du/ni kan se hur det ser ut nu
test.profilmakarna.com/display/1index.asp
fick ett fel om att End SELECT saknades så jag skrev in det på den rad som felmeddelandet sa.
<code>End SELECT</code>
<code><%
Session.LCID = 1053
'skapar en databaskoppling.
set conn = Server.CreateObject("adodb.connection")
conn.open "Provider=Microsoft.Jet.OleDB.4.0; Data Source=" & Server.MapPath("db/inlagg.mdb")
'Skapar ett recordset för att spara inläggen.
set spara = Server.CreateObject("adodb.recordset")
'Skapar ett recordset för att visa inläggen.
Const perSida = 10
Dim onPage
if Request.QueryString("onPage") = "" then
onPage = 1
else
onPage = Request.QueryString("onPage")
end if
set visa = Server.CreateObject("adodb.recordset")
%>
<!--*******************************************************************-->
<link href="pagestyle.css" rel="stylesheet" type="text/css">
</head>
<body>
<table width="799" border="0" align="center" cellpadding="0" cellspacing="2">
<tr>
<td valign="top">
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr align="left" valign="top" class="brodtext">
<td width="11" height="15"></td>
<td width="196" height="15"><strong>Model</strong></td>
<td width="163" height="15"><strong>Size</strong></td>
<td width="354" height="15"><strong>Resolution</strong></td>
</tr>
</table>
<div align="center"> </div>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<%
strSort = Request.Querystring("sort")
Select Case strSort
Case "IdDesc"
sqlVisa = "SELECT * FROM TFT ORDER BY ID Desc"
Case "NamnDesc"
sqlVisa = "SELECT * FROM TFT ORDER BY Model Desc"
Case "FargDesc"
sqlVisa = "SELECT * FROM TFT ORDER BY Size Desc"
visa.open sqlVisa, conn, 1
if not visa.eof then
visa.PageSize = perSida
visa.Absolutepage = onPage
Dim totalPages
totalPages = visa.PageCount
Dim raknare
raknare = 0
Do while not visa.EOF and raknare < visa.PageSize
%>
<tr align="left" valign="top" class="txt9">
<td width="11" valign="middle"><img src="img/jpg.gif" width="7" height="8"></td>
<td width="196"><%=visa("Model")%></td>
<td width="163"><%=visa("Size")%></td>
<td width="354"><%=visa("Resolution")%></td>
</tr>
<%
raknare = raknare + 1
visa.movenext
loop
else
%>
<div class="brodtext">Det finns inga inlägg att visa.</div>
<%
end if
%>
</table>
<%=totPages%>
<%
Dim Pages
if totalPages > 1 then%>
<%for Pages = 1 to totalPages%>
<%=Pages%>
<%
next
end if%>
<p>
<%
SQL ="SELECT COUNT(*) AS totPosts FROM TFT"
conn.Execute(SQL)
%>
</p>
<p class="brodtext"><font color="#000000"><%=totPosts%></font></p>
<p class="brodtext">
<%
%>
</p>
</td>
</tr>
</table>
<%
visa.close
set visa = nothing
conn.close
set conn = nothing
End SELECT
%>
</code>Sv: Sortera från A-Ö– & Ö-A
http://validator.w3.org/check?uri=http%3A%2F%2Ftest.profilmakarna.com%2Fdisplay%2F1index.asp&doctype=HTML+4.01+Strict&charset=iso-8859-1+%28Western+Europe%29
När jag testar med:
http://test.profilmakarna.com/display/1index.asp?sort=NamnDesc Så stoppar koden efter <% i koden:
<code>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<%
strSort = Request.Querystring("sort")
</code>
Prova och se vad som egentligen händer genom att lägga ut lite Response.Write i koden för att se om du får strSort att sättas, att din sql blir ok
<code>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<%
strSort = Request.Querystring("sort")
Response.Write strSort & "<br>"
Select Case strSort
Case "IdDesc"
sqlVisa = "SELECT * FROM TFT ORDER BY ID Desc"
Case "NamnDesc"
sqlVisa = "SELECT * FROM TFT ORDER BY Model Desc"
Case "FargDesc"
sqlVisa = "SELECT * FROM TFT ORDER BY Size Desc"
Response.Write sqlVisa & "<br>"
Response.End ' stoppa körningen och kolla att dina parametrar är "laddade"
</code>
PS
Verkar som om färgkodningen strular i forumet nu
DSSv: Sortera från A-Ö– & Ö-A
får det inte att funka med det senaste :-(
om du kikar in på sidan så ser du att det funkar att klicka på länken men inget visas från tabellen :-(
så här ser hela koden ut nu som jag har, har du någon lättare kod färdig kanske?
<code><%
Session.LCID = 1053
'skapar en databaskoppling.
set conn = Server.CreateObject("adodb.connection")
conn.open "Provider=Microsoft.Jet.OleDB.4.0; Data Source=" & Server.MapPath("db/inlagg.mdb")
'Skapar ett recordset för att spara inläggen.
set spara = Server.CreateObject("adodb.recordset")
'Skapar ett recordset för att visa inläggen.
Const perSida = 10
Dim onPage
if Request.QueryString("onPage") = "" then
onPage = 1
else
onPage = Request.QueryString("onPage")
end if
set visa = Server.CreateObject("adodb.recordset")
%>
<!--*******************************************************************-->
<link href="pagestyle.css" rel="stylesheet" type="text/css">
</head>
<body>
<table width="799" border="0" align="center" cellpadding="0" cellspacing="2">
<tr>
<td valign="top">
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr align="left" valign="top" class="brodtext">
<td width="11" height="15"></td>
<td width="196" height="15"><strong>Model</strong></td>
<td width="163" height="15"><strong>Size</strong></td>
<td width="354" height="15"><strong>Resolution</strong></td>
</tr>
</table>
<div align="center"> </div>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<%
strSort = Request.Querystring("sort")
Response.Write strSort & "<br>"
Select Case strSort
Case "IdDesc"
sqlVisa = "SELECT * FROM TFT ORDER BY ID Desc"
Case "NamnDesc"
sqlVisa = "SELECT * FROM TFT ORDER BY Model Desc"
Case "FargDesc"
sqlVisa = "SELECT * FROM TFT ORDER BY Size Desc"
Response.Write sqlVisa & "<br>"
Response.End ' stoppa körningen och kolla att dina parametrar är "laddade"
visa.open sqlVisa, conn, 1
if not visa.eof then
visa.PageSize = perSida
visa.Absolutepage = onPage
Dim totalPages
totalPages = visa.PageCount
Dim raknare
raknare = 0
Do while not visa.EOF and raknare < visa.PageSize
%>
<tr align="left" valign="top" class="txt9">
<td width="11" valign="middle"><img src="img/jpg.gif" width="7" height="8"></td>
<td width="196"><%=visa("Model")%></td>
<td width="163"><%=visa("Size")%></td>
<td width="354"><%=visa("Resolution")%></td>
</tr>
<%
raknare = raknare + 1
visa.movenext
loop
else
%>
<div class="brodtext">Det finns inga inlägg att visa.</div>
<%
end if
%>
</table>
<%=totPages%>
<%
Dim Pages
if totalPages > 1 then%>
<%for Pages = 1 to totalPages%>
<%=Pages%>
<%
next
end if%>
<p>
<%
SQL ="SELECT COUNT(*) AS totPosts FROM TFT"
conn.Execute(SQL)
%>
</p>
<p class="brodtext"><font color="#000000"><%=totPosts%></font></p>
<p class="brodtext">
<%
%>
</p>
</td>
</tr>
</table>
<%
visa.close
set visa = nothing
conn.close
set conn = nothing
End SELECT
%>
</code>Sv: Sortera från A-Ö– & Ö-A
<code>
Select Case strSort
Case "IdDesc"
sqlVisa = "SELECT * FROM TFT ORDER BY ID Desc"
Case "NamnDesc"
sqlVisa = "SELECT * FROM TFT ORDER BY Model Desc"
Case "FargDesc"
sqlVisa = "SELECT * FROM TFT ORDER BY Size Desc"
Response.Write sqlVisa & "<br>" -<*****************
Response.End ' stoppa körningen och kolla att dina parametrar är "laddade"
</code>
Det verkar som som du har skrivit
<code>
Response.Write strSort & "<br>"
</code>
på den raden jag har markerat, du skriver inte ut SQLsatsen sqlVisa utan det som finns i strSort.
PS
Skall iväg några dagar, tillbaks på torsdag nästa vecka, påminn min med ett imail med länk till detta inlägget, om jag skulle glömma av ärendet
DSSv: Sortera från A-Ö– & Ö-A
<code>
SQLExempel = "SELECT Namn FROM Tabell ORDER BY Id asc"
</code>
Detta ordnar Ascending (alltså stigande). Om du vill ordna fallande:
<code>
SQLExempel = "SELECT Namn FROM Tabell ORDER BY Id desc"
</code>
Alltså det sista ordet i värdet SQL avgör om det ska sorteras stigande eller fallande (asc eller desc).
Jag vet inte om det här hjälpte dig, men när jag läste ditt problem verkar det som om det är detta du behöver?Sv: Sortera från A-Ö– & Ö-A
Ska inte End Select vara här???
Sen kan det också vara bra med en
Case Else ifall strSort inte innehåller något
<code>
Select Case strSort
Case "IdDesc"
sqlVisa = "SELECT * FROM TFT ORDER BY ID Desc"
Case "NamnDesc"
sqlVisa = "SELECT * FROM TFT ORDER BY Model Desc"
Case "FargDesc"
sqlVisa = "SELECT * FROM TFT ORDER BY Size Desc"
Case Else
sqlVisa = "SELECT * FROM TFT ORDER BY ID Desc"
End Select
</code>