---
title: "Sista posten ska visa annorluna bild"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/123566-sista-posten-ska-visa-annorluna-bild/page2"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "wunderbaren"
published: "2005-03-02T11:10:09.000Z"
updated: "2005-03-07T14:07:12.000Z"
replies: 60
views: 1262
page: 2
pages: 4
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/123566-sista-posten-ska-visa-annorluna-bild"
---

# Sista posten ska visa annorluna bild

_Sida 2 av 4._

## #21 — J.N., 2005-03-03T14:35Z

HEJ!

Men, då har du inte gjort, eller visar inte, koden som vi skrev, men samtidigt får du inga felmeddelanden.

Varför visar du den kodsnutten?

Frågan går genom, du får ett antal poster.
För mig verkar det som att RecordCount blir -1 ändå?

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

## #22 — wunderbaren, 2005-03-03T14:40Z

Jag förstår inte riktigt vad du menar, detta är koden i sin helhet. Den visar alltså den bilden som ska visas sist, visas för alla poster. Vad ska man ändra i koden för att det ska fungera?

```
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "DRIVER={MySQL ODBC 3.51 Driver};SERVER=localhost;DATABASE=wonderland2;USER=wonderland;PASSWORD=lookinggood23;OPTION=3;"

sql = "Select * From galleri Where sort='" & Request.Querystring("kat") & "' Order By namn"

intCounter = 0

Set RecSet = Server.Createobject("ADODB.Recordset")
RecSet.Open sql, Conn, 1, 2

if(RecSet.EOF) then
  Response.Write "Inga kategorier inlagda i kategorin " & Request.QueryString("kat")
else
  While Not RecSet.EOF
    set objRS = Conn.Execute("SELECT * FROM galleri WHERE namn = '" & RecSet("namn") & "'")
    set objPicture = Conn.Execute("SELECT * FROM bilder WHERE namn = '" & Request.Querystring("kat") & "' ORDER BY namn DESC LIMIT 1")
    
    intCounter = intCounter + 1

    if(intCounter < RecSet.RecordCount) then
      strPath = "files/icon_lines.gif"
    else
      strPath = "files/icon_lines2.gif"
    end if

    Response.Write "<img border=""0"" src=""files/icon_lines_empty.gif"" width=""17"" height=""20"" align=""absmiddle"">"
    Response.Write "<img border=""0"" src=""" & strPath & """ width=""17"" height=""20"" align=""absmiddle"">"
    Response.Write "<img border=""0"" src=""files/icon_folder.gif"" width=""16"" height=""15"" align=""absmiddle"">&nbsp;&nbsp;"
    Response.Write "<a href=""./?page=galleri&kat=" & Request.QueryString("kat") & "&id=" & RecSet("namn") & """>" & RecSet("namn") & "</a><br>"
    
    RecSet.MoveNext
  Wend
end if
```

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

## #23 — J.N., 2005-03-03T14:51Z

HEJ!

> **wunderbaren skrev:**
>
> Vad ska man ändra i koden för att det ska fungera?

Det återstår att se.

Nu går frågan igenom, som tidigare.

Men, eftersom du har lagt till rätt databasöppning och lagt objektskapningen av RecSet ska RecordCount fungera.

Då återstår fortsatt felsökning!
Skriv ut de variabler som påverkar att det blir fel, nämligen intCounter och RecSet.RecordCount.

Har du tex tre poster i RS:et, blir RecordCount tre.

Då blir if-satsen sann, **NÄ!, det blir den ju inte!** på tredje varvet!

Följande borde du få på tredje varvet:
IntCounter = 3
RecSet.RecordCount = 3 (som alla varv)

if-satsen:
intCounter \< RecSet.RecordCount
3\<3
vilket inte är sant, dvs det blir icon_lines2.gif ändå.

Om du sätter IntCounter=1, eller lägger \<= i if-satsen, eller sätter endast =, och byter plats på bilderna, bör det fungera!

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

## #24 — wunderbaren, 2005-03-03T15:09Z

**IntCounter=1**
Samma fel, sista bilden visades på alla poster

**\<= i if-satsen**
Samma fel, sista bilden visades på alla poster

**sätter endast =, och byter plats på bilderna**
Då visades den vanliga bilden hela tiden

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

## #25 — J.N., 2005-03-03T15:22Z

HEJ!

> **J.N. skrev:**
>
> Då återstår fortsatt felsökning!
> Skriv ut de variabler som påverkar att det blir fel, nämligen intCounter och RecSet.RecordCount.

Om du skrivit ut variablerna och de är rätt, vet jag inte vad felet är.

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

## #26 — wunderbaren, 2005-03-03T15:25Z

Det är koden däruppe:
<http://www.webforum.nu/showthread.php?s=&postid=1010439#post1010439>

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

## #27 — wunderbaren, 2005-03-03T15:50Z

Säker på att det ska funka? För det funkar verkligen inte =/

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

## #28 — wunderbaren, 2005-03-03T16:07Z

Har provat följande koder:

```
    if(intCounter = RecSet.RecordCount) then
      strPath = "files/icon_lines.gif"
    else
      strPath = "files/icon_lines2.gif"
    end if
```

```
    if(intCounter=1 < RecSet.RecordCount) then
      strPath = "files/icon_lines.gif"
    else
      strPath = "files/icon_lines2.gif"
    end if
```

```
    if(intCounter <= RecSet.RecordCount) then
      strPath = "files/icon_lines.gif"
    else
      strPath = "files/icon_lines2.gif"
    end if
```

```
    if(intCounter = RecSet.RecordCount) then
      strPath = "files/icon_lines2.gif"
    else
      strPath = "files/icon_lines.gif"
    end if
```

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

## #29 — J.N., 2005-03-03T16:19Z

HEJ!

Nr 2 är direkt fel, där har du både = och \< i samma uttryck, men det har ingen betydelse, för nr 1, 3 eller 4 borde fungerat!

Jag tror du missat en grundläggande sak i felsökningen, utskriften av vad du håller på med.

Lägg
response.write intCounter & "-" & RecSet.RecordCount
ovanför ifsatsen, då ser du vilka siffror du får i loopen.

När du gjort det, ser du vad servern tycker att du håller på med.
Skulle det stå (med 3 bilder, )
1-3
2-3
3-3
och du kör med alternativ 4 ska det fungera.

Men, tydligen har du något värde fel, eftersom det inte fungerar.

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

## #30 — wunderbaren, 2005-03-03T16:24Z

Körde med alla alternativ , fick följande:

1--1
2--1
3--1

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

## #31 — J.N., 2005-03-03T16:36Z

HEJ!

Precis det vi inte ville, ha, eller jo, nu vet vi vad felet är.

Eftersom du använder RecSet-objektet rätt, gissar jag att det har något med MySQL att göra.
Om det kan jag inget, och har därför ingen lösning. :( 

<http://www.devguru.com/Technologies/ado/quickref/recordset_recordcount.html>

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

## #32 — wunderbaren, 2005-03-03T16:38Z

Ingen lösning alls? :(

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

## #33 — J.N., 2005-03-04T10:28Z

HEJ!

Tyvärr, jag har ingen, eftersom det troligen handlar om MySQL-relaterade problem.
Mina kunskaper täcker tyvärr inte det området.

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

## #34 — @nders, 2005-03-06T06:14Z

Och om man provar med en statisk cursor?

På sidan J.N. länkar till står att det kan vara knas om man använder en dynamisk cursor. Därför hade jag provat med en statisk istället.

[Recordset.Open](http://www.devguru.com/Technologies/ado/quickref/recordset_open.html)

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

## #35 — wunderbaren, 2005-03-06T12:49Z

Menar du den här raden eller:
RecSet.Open sql, Conn, 1, 2

Vad bör jag ersätta siffrorna med?

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

## #36 — @nders, 2005-03-06T17:14Z

Om jag läser länken rätt borde den tredje parametern vara cursortyp. Och om jag läser ännu mer rätt torde nuffran 3 motsvara en statisk cursor.

mvh

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

## #37 — wunderbaren, 2005-03-06T17:18Z

Har provat en 3:a, och två treor. Samma "fel".

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

## #38 — @nders, 2005-03-06T17:27Z

Då kan det vara en begränsning iom att du använder MySQL. Den "lättaste" lösningen kanske skulle vara om du använder GetRows(). (en liten sökning här på wF ger massor av exempel på detta).

mvh

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

## #39 — wunderbaren, 2005-03-06T17:33Z

Såg precis massor med exempel på detta, men förstår inte riktigt hur jag ska använda det. Ombyggnad av min nuvarande kod uppskattas, så man lättare ser! :)

```
sql = "Select * From galleri Where sort='" & Request.Querystring("kat") & "' Order By namn"

intCounter = 0

Set RecSet = Server.Createobject("ADODB.Recordset")
RecSet.Open sql, Conn, 3,3

if(RecSet.EOF) then
  Response.Write "Inga kategorier inlagda i kategorin " & Request.QueryString("kat")
else
  While Not RecSet.EOF
    set objRS = Conn.Execute("SELECT * FROM galleri WHERE namn = '" & RecSet("namn") & "'")
    set objPicture = Conn.Execute("SELECT * FROM bilder WHERE namn = '" & Request.Querystring("kat") & "' ORDER BY namn DESC LIMIT 1")
    
    intCounter = intCounter + 1
    
    response.write intCounter & "-" & RecSet.RecordCount

    if(intCounter < RecSet.RecordCount) then
      strPath = "files/icon_lines.gif"
    else
      strPath = "files/icon_lines2.gif"
    end if

    Response.Write "<img border=""0"" src=""files/icon_lines_empty.gif"" width=""17"" height=""20"" align=""absmiddle"">"
    Response.Write "<img border=""0"" src=""" & strPath & """ width=""17"" height=""20"" align=""absmiddle"">"
    Response.Write "<img border=""0"" src=""files/icon_folder.gif"" width=""16"" height=""15"" align=""absmiddle"">&nbsp;&nbsp;"
    Response.Write "<a href=""./?page=galleri&kat=" & Request.QueryString("kat") & "&id=" & RecSet("namn") & """>" & RecSet("namn") & "</a><br>"
    
    RecSet.MoveNext
  Wend
end if
```

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

## #40 — @nders, 2005-03-06T17:38Z

Man *kan* göra så här:

```
sql = "Select * From galleri Where sort='" & Request.Querystring("kat") & "' Order By namn"

intCounter = 0

Set RecSet = Server.Createobject("ADODB.Recordset")
RecSet.Open sql, Conn, 3,3

if(RecSet.EOF) then
  Response.Write "Inga kategorier inlagda i kategorin " & Request.QueryString("kat")
else
  [b]lRecordCount = Ubound(RecSet.GetRows(), 2) + 1[/b]
  While Not RecSet.EOF
    set objRS = Conn.Execute("SELECT * FROM galleri WHERE namn = '" & RecSet("namn") & "'")
    set objPicture = Conn.Execute("SELECT * FROM bilder WHERE namn = '" & Request.Querystring("kat") & "' ORDER BY namn DESC LIMIT 1")
    
    intCounter = intCounter + 1
    
    response.write intCounter & "-" & RecSet.RecordCount

    if(intCounter < [b]lRecordCount[/b]) then
      strPath = "files/icon_lines.gif"
    else
      strPath = "files/icon_lines2.gif"
    end if

    Response.Write "<img border=""0"" src=""files/icon_lines_empty.gif"" width=""17"" height=""20"" align=""absmiddle"">"
    Response.Write "<img border=""0"" src=""" & strPath & """ width=""17"" height=""20"" align=""absmiddle"">"
    Response.Write "<img border=""0"" src=""files/icon_folder.gif"" width=""16"" height=""15"" align=""absmiddle"">  "
    Response.Write "<a href=""./?page=galleri&kat=" & Request.QueryString("kat") & "&id=" & RecSet("namn") & """>" & RecSet("namn") & "</a><br>"
    
    RecSet.MoveNext
  Wend
end if
```

Mvh

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/123566-sista-posten-ska-visa-annorluna-bild/page2  
Föregående sida: https://www.webforum.nu/amne/asp/123566-sista-posten-ska-visa-annorluna-bild.md  
Nästa sida: https://www.webforum.nu/amne/asp/123566-sista-posten-ska-visa-annorluna-bild/page3.md
