---
title: "Ifall jag var den senaste..."
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/93442-ifall-jag-var-den-senaste"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "DiDjo"
published: "2003-12-26T12:01:36.000Z"
updated: "2003-12-29T17:08:33.000Z"
replies: 22
views: 542
page: 1
pages: 2
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/93442-ifall-jag-var-den-senaste"
---

# Ifall jag var den senaste...

_Sida 1 av 2._

## #1 — DiDjo, 2003-12-26T12:01Z

Hej! Hur gör jag en kod som kollar om "jag" var den senaste på sidan? Den är till för att se vilka som va de 5 senaste besökarna! Men just nu blir jag alla 5 om jag går in på sidan 5 gånger! Hur gör jag en kod, som inte lägger till mig om jag var den senaste?

```
if request.querystring("vem") <> gnamn then
rs3.addnew
rs3("vemsida") = request.querystring("vem")
rs3("vem") = gnamn
rs3("datum") = now
rs3.update
rs3.close
end if
```

Permalänk: https://www.webforum.nu/p/93442

## #2 — DiDjo, 2003-12-26T21:59Z

Ingen Som vet?

Permalänk: https://www.webforum.nu/p/1237426

## #3 — mozilla, 2003-12-26T22:39Z

Många e väl upptagna så här på annandagen.

Lite svårt att veta? Är koden du posta ett eget försök? Vad innehåller variabeln gnamn och querystring("vem") ?

Om du har fast IP kan du ju kolla det med:

```
if(Request.ServerVariables("REMOTE_ADDR") <> [i]"143.2(ditt ip)[/i]") Then <koden här>
```

Permalänk: https://www.webforum.nu/p/1237430

## #4 — Josef, 2003-12-26T22:42Z

Får se om jag har uppfattat frågan rätt...?

Du vill alltså att oavsett om det är samma person som har loggat in de 2 senaste gångerna ska det bara visas som en inloggning i listan, där du vill ha det 5 senaste personerna o inte de senaste inloggningarna...

Korrekt uppfattat? :q

Permalänk: https://www.webforum.nu/p/1237432

## #5 — DiDjo, 2003-12-27T16:30Z

Det är inte inloggning... Det är när man kommer in på någons profil, så ska sittt namn sparas i databasen! Koden jag postade är den kod jag använder för att spara användarens namn i en databas! Men om den användaren går in 3 gånger i t.ex. min profil, så sparas namnet 3 gånger!

T.ex.
Användare1  20:00
Användare1  19:57
Användare1  12:00
Användare2  Inte idag
Användare3  Inte idag

Så blir det nu!

Permalänk: https://www.webforum.nu/p/1237591

## #6 — mozilla, 2003-12-27T18:01Z

Om du tar *SELECT DISTINCT userID FROM lastvisit...* Tar den bara ut ett av samma. Kanske kan funka?

Permalänk: https://www.webforum.nu/p/1237629

## #7 — DiDjo, 2003-12-27T21:05Z

Men, ifall det blir så här då??

Användare 1
Användare 3
Användare 1
osv...

Permalänk: https://www.webforum.nu/p/1237695

## #8 — Sebbe, 2003-12-27T23:07Z

```
SELECT TOP 5 DISTINCT vem FROM tabell WHERE vemsida = '" & Request.QueryString("vem") & "' ORDER BY datum
```

Tycker jag nog borde funka. :)

Permalänk: https://www.webforum.nu/p/1237736

## #9 — DiDjo, 2003-12-28T13:27Z

Vart det här felet då:

```
Microsoft OLE DB Provider for ODBC Drivers error '80040e14' 
[Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression 'DISTINCT vem'. 

/kommun/hem.asp, line 218
```

Permalänk: https://www.webforum.nu/p/1237837

## #10 — Sebbe, 2003-12-28T15:18Z

Vad händer om du byter plats på TOP 5 och DISTINCT då?

```
SELECT DISTINCT TOP 5 vem FROM tabell WHERE vemsida = '" & Request.QueryString("vem") & "' ORDER BY datum
```

Permalänk: https://www.webforum.nu/p/1237880

## #11 — DiDjo, 2003-12-28T15:41Z

Då hände detta:

```
Microsoft OLE DB Provider for ODBC Drivers error '80040e07' 
[Microsoft][ODBC Microsoft Access Driver] ORDER BY clause (datum) conflicts with DISTINCT. 

/kommun/hem.asp, line 218
```

Permalänk: https://www.webforum.nu/p/1237895

## #12 — Sebbe, 2003-12-28T16:04Z

Observera att jag inte är någon höjdare på SQL, men jag kan ju försöka. ;)

```
SELECT DISTINCT vem FROM tabell WHERE datum IN (SELECT TOP 5 datum FROM tabell WHERE vemsida = '" & Request.QueryString("vem") & "' ORDER BY datum DESC)
```

Permalänk: https://www.webforum.nu/p/1237901

## #13 — DiDjo, 2003-12-28T17:09Z

Nu säger den att den inte hittar rs3("datum"), vilket handlar om det här också...

```
ADODB.Recordset error '800a0cc1' 
Item cannot be found in the collection corresponding to the requested name or ordinal. 

/kommun/hem.asp, line 220
```

Här är hela loopen

```
<%
SQL1 = "SELECT DISTINCT vem FROM besokare WHERE datum IN (SELECT TOP 5 datum FROM besokare WHERE vemsida = '" & Request.QueryString("vem") & "' ORDER BY datum DESC)"

Set Rs3 = Connect2.Execute(SQL1)
Do Until Rs3.EOF
[b]if datediff("d",cdate(rs3("datum")),date()) = 0 then[/b]
if len(Hour(rs3("datum"))) = 1 then
    intHour = "0"&Hour(rs3("datum"))
else
    intHour = Hour(rs3("datum"))
end if

if len(Minute(rs3("datum"))) = 1 then
    intMinute = "0"&Minute(rs3("datum"))
else
    intMinute = Minute(rs3("datum"))
end if

strDatum = intHour & ":" & intMinute
else
strdatum = "Inte idag"
end if

Response.Write "<tr>"
Response.Write "<td width=50 align=left><font face=""Verdana, Arial, Helvetica, sans-serif"" size=""1""><b><a href=""hem.asp?vem="&  Rs3("vem") & """>"&  Rs3("vem") & "</a</b></td>"
Response.Write "<td width=60 align=center><font face=""Verdana, Arial, Helvetica, sans-serif"" size=""1"">" & strdatum & "</td>"
Response.Write "</tr>"
Rs3.MoveNext

Loop

%>
```

Permalänk: https://www.webforum.nu/p/1237923

## #14 — Sebbe, 2003-12-28T17:40Z

Jo, du måste hämta ut datumfältet också om du använder det i koden.

```
SQL1 = "SELECT DISTINCT vem, datum FROM besokare WHERE datum IN (SELECT TOP 5 datum FROM besokare WHERE vemsida = '" & Request.QueryString("vem") & "' ORDER BY datum DESC)"
```

Det kan dock vara så att den där SQL-satsen inte ger önskat resultat.

Permalänk: https://www.webforum.nu/p/1237931

## #15 — DiDjo, 2003-12-28T18:07Z

nepp... Det fungerar nu... men blev inte det resultatet jag ville ha... nu kommer jag inte med alls i listan... vet inte hur den loopar ut det nu! Går det inte att göra med en if-sats? Så att man inte kommer med i databasen alls, om man var den senaste på "min" sida?

typ

if gnamn = "den senaste posten på min sida" then
'inget händer
else
'hamnar i databasen
end if

Permalänk: https://www.webforum.nu/p/1237934

## #16 — Sebbe, 2003-12-28T18:17Z

Jo, du skulle väl kunna göra så här på profilsidan.

```
strSQL = "SELECT TOP 5 vem FROM tabell WHERE vemsida = '" & Request.QueryString("vem") & "' ORDER BY datum DESC"
Set objRS = objConn.Execute(strSQL)
blnJag = False

Do Until objRS.EOF
  If objRS("vem") = gnamn Then blnJag = True
  objRS.MoveNext
Loop

Set objRS = Nothing

If NOT blnJag Then
  strSQL = "INSERT INTO tabell (vem, vemsida, datum) VALUES ('" & gnamn & "', '" & Request.QueryString("vem") & "', #" & Now() & "#)"
  objConn.Execute(strSQL)
End If
```

Permalänk: https://www.webforum.nu/p/1237938

## #17 — DiDjo, 2003-12-28T18:42Z

hmmm nu vet jag inte riktigt vart den ska va :P....

Här är koden jag använder för att sätta in användaren i databasen:

```
if request.querystring("vem") <> gnamn then
rs3.addnew
rs3("vemsida") = request.querystring("vem")
rs3("vem") = gnamn
rs3("datum") = now
rs3.update
rs3.close
end if
```

Och här är loopen:

```
<%
SQL1 = "SELECT TOP 5 * FROM besokare WHERE vemsida = '" & Request.QueryString("vem") & "' ORDER BY datum DESC, vem"

Set Rs3 = Connect2.Execute(SQL1)
Do Until Rs3.EOF
if datediff("d",cdate(rs3("datum")),date()) = 0 then
if len(Hour(rs3("datum"))) = 1 then
    intHour = "0"&Hour(rs3("datum"))
else
    intHour = Hour(rs3("datum"))
end if

if len(Minute(rs3("datum"))) = 1 then
    intMinute = "0"&Minute(rs3("datum"))
else
    intMinute = Minute(rs3("datum"))
end if

strDatum = intHour & ":" & intMinute
else
strdatum = "Inte idag"
end if

Response.Write "<tr>"
Response.Write "<td width=50 align=left><font face=""Verdana, Arial, Helvetica, sans-serif"" size=""1""><b><a href=""hem.asp?vem="&  Rs3("vem") & """>"&  Rs3("vem") & "</a</b></td>"
Response.Write "<td width=60 align=center><font face=""Verdana, Arial, Helvetica, sans-serif"" size=""1"">" & strdatum & "</td>"
Response.Write "</tr>"
Rs3.MoveNext

Loop

%>
```

Vart ska den va? :e

Om jag fattade rätt, så ska den in vid loopen och min kod som jag har för att lägga in i databasen ska bort? Stämmer de??

Permalänk: https://www.webforum.nu/p/1237950

## #18 — DiDjo, 2003-12-28T19:03Z

Så här gjorde jag:

```
SQL1 = "SELECT TOP 5 vem FROM besokare WHERE vemsida = '" & Request.QueryString("vem") & "' ORDER BY datum DESC, vem"
Set rs3 = connect2.Execute(SQL1)
blnJag = False

Do Until rs3.EOF
  If rs3("vem") = gnamn Then blnJag = True
  rs3.MoveNext
Loop

Set rs3 = Nothing

If NOT blnJag Then
  strSQL = "INSERT INTO besokare (vem, vemsida, datum) VALUES ('" & gnamn & "', '" & Request.QueryString("vem") & "', #" & Now() & "#)"
  connect2.Execute(strSQL)
End If

Set Rs3 = Connect2.Execute(SQL1)
Do Until Rs3.EOF
if datediff("d",cdate(rs3("datum")),date()) = 0 then
if len(Hour(rs3("datum"))) = 1 then
    intHour = "0"&Hour(rs3("datum"))
else
    intHour = Hour(rs3("datum"))
end if

if len(Minute(rs3("datum"))) = 1 then
    intMinute = "0"&Minute(rs3("datum"))
else
    intMinute = Minute(rs3("datum"))
end if

strDatum = intHour & ":" & intMinute
else
strdatum = "Inte idag"
end if

Response.Write "<tr>"
Response.Write "<td width=50 align=left><font face=""Verdana, Arial, Helvetica, sans-serif"" size=""1""><b><a href=""hem.asp?vem="&  Rs3("vem") & """>"&  Rs3("vem") & "</a</b></td>"
Response.Write "<td width=60 align=center><font face=""Verdana, Arial, Helvetica, sans-serif"" size=""1"">" & strdatum & "</td>"
Response.Write "</tr>"
Rs3.MoveNext

Loop

%>
```

Då tog jag bort koden jag använde för att lägga in i databasen!

Men då säger den att rs3("datum") inte finns!

Permalänk: https://www.webforum.nu/p/1237954

## #19 — Sebbe, 2003-12-28T20:35Z

```
SQL1 = "SELECT TOP 5 vem FROM besokare WHERE vemsida = '" & Request.QueryString("vem") & "' ORDER BY datum DESC, vem"
Set rs3 = connect2.Execute(SQL1)
blnJag = False

Do Until rs3.EOF
  If rs3("vem") = gnamn Then blnJag = True
  rs3.MoveNext
Loop

Set rs3 = Nothing

If NOT blnJag Then
  strSQL = "INSERT INTO besokare (vem, vemsida, datum) VALUES ('" & gnamn & "', '" & Request.QueryString("vem") & "', #" & Now() & "#)"
  connect2.Execute(strSQL)
End If

SQL1 = "SELECT TOP 5 * FROM besokare ORDER BY datum DESC"
Set Rs3 = Connect2.Execute(SQL1)

Do Until Rs3.EOF
  if datediff("d",cdate(rs3("datum")),date()) = 0 then
    if len(Hour(rs3("datum"))) = 1 then
      intHour = "0"&Hour(rs3("datum"))
    else
      intHour = Hour(rs3("datum"))
    end if

    if len(Minute(rs3("datum"))) = 1 then
      intMinute = "0"&Minute(rs3("datum"))
    else
      intMinute = Minute(rs3("datum"))
    end if

    strDatum = intHour & ":" & intMinute
  else
    strdatum = "Inte idag"
  end if

  Response.Write "<tr>"
  Response.Write "<td width=50 align=left><font face=""Verdana, Arial, Helvetica, sans-serif"" size=""1""><b><a href=""hem.asp?vem="&  Rs3("vem") & """>"&  Rs3("vem") & "</a</b></td>"
  Response.Write "<td width=60 align=center><font face=""Verdana, Arial, Helvetica, sans-serif"" size=""1"">" & strdatum & "</td>"
  Response.Write "</tr>"
  Rs3.MoveNext
Loop
%>
```

Permalänk: https://www.webforum.nu/p/1237989

## #20 — DiDjo, 2003-12-28T20:57Z

Tackar Tackar! :birp  :moose

Permalänk: https://www.webforum.nu/p/1237998

---

Tråden på webben: https://www.webforum.nu/amne/asp/93442-ifall-jag-var-den-senaste  
Nästa sida: https://www.webforum.nu/amne/asp/93442-ifall-jag-var-den-senaste/page2.md
