07. februar 2002 - 03:21Der er
4 kommentarer og 1 løsning
Placering
Hvordan kan jeg finde en Placering på en person ligesom på eksperten.dk skal kun kunne udskrive en. EX : Cobra du har 1000 point og din placering er nr. 536
Set rs = Server.CreateObject("ADODB.RecordSet") rs.CursorLocation = adUseClient strSQL = "Select * From xyz where ID=" & Request.QueryString("ID") rs.Open strSQL, Conn, 1, 3 ' adOpenKeyset, adLockOptimistic intPoint = rs("Z") ' Find brugers point strSQL = "Select Z From xyz order by Z Desc" ' Lav en liste med point i baglæns rækkefølge rs.Close rs.Open strSQL, Conn, 1, 3 ' adOpenKeyset, adLockOptimistic iMax = rs.RecordCount iMin = 0 iCnt = 0 Found = False if not RS.EOF then do while not Found and (iCnt < 10) iCnt = iCnt + 1 iMidt = iMin + Int((iMax - iMin) / 2) rs.MoveFirst rs.Move(iMidt) if intPoint > rs("Z") then iMax = iMidt else if intPoint < rs("Z") then iMin = iMidt else Found = True end if end if loop end if if Found then Response.Write("Found Pos: " & rs.AbsolutePosition) else Response.Write("Not Found. ") end if rs.Close %>
Jeg har lidt småtravlt nu - men vil gerne kommentere det senere. :-) Det virker.
Set rs = Server.CreateObject("ADODB.RecordSet") rs.CursorLocation = 3 ' adUseClient strSQL = "Select * From bruger where ID=" & Request.QueryString("ID") rs.Open strSQL, Conn, 1, 3 ' adOpenKeyset, adLockOptimistic strPoint = rs("point") ' Find brugers point strSQL = "Select point From bruger where point>" & strPoint ' Lav en liste med point højere end brugers point rs.Close rs.Open strSQL, Conn, 1, 3 ' adOpenKeyset, adLockOptimistic Response.Write("Placering: " & rs.RecordCount + 1) rs.Close %>
Ovennævnte finder alle dem der har en højere placering end brugeren selv og lægger 1 til.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.