---
title: "om bilden ingen,gif"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/12510-om-bilden-ingen-gif"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "jboy_87"
published: "2001-11-04T12:15:00.000Z"
updated: "2001-11-07T13:43:00.000Z"
replies: 21
views: 312
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/12510-om-bilden-ingen-gif"
---

# om bilden ingen,gif

_Sida 1 av 2._

## #1 — jboy_87, 2001-11-04T12:15Z

Hur gör jag så att det inte bilden inget.gif visas i slumpa funktionen.
så här ser koden ut

Och jag har en tabell som heter Bild2
där e sökvägen till bilderna efter att man laddat upp bilden.

\<%
  Response.Buffer = True

  Function Show()
    Randomize
    RandNum = Int(Rnd \* Ialt) + 1
    Record.MoveFirst
    For i = 1 to RandNum - 1
      Record.MoveNext
    next 
    Response.Write "\<a href='whois.asp?checkid=" & Record("id") & "'\>\<img src='" & Record("bild2") & "' alt='" & Record("username")  & Record("username") & "' border = '1' width= '65' height= '77'\>\</a\>"
  end function

   
  Set Rs = Server.CreateObject("ADODB.Connection")
  DBPath = "DBQ=" & server.mappath("Database/members.mdb")
  Rs.Open "DRIVER={Microsoft Access Driver (\*.mdb)}; " & DBPath

  Sql = "Select count(\*) as Found from members"
  Set Record =  Rs.Execute(Sql) 

  Ialt = Record("found")
 
  Sql = "Select \* from members"
  Set Record =  Rs.Execute(Sql) 
%\>

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

## #2 — @nders, 2001-11-04T12:23Z

Enklast:

```
Sql = "Select * from members [b]where not bild = 'ingen.gif'[/b]"
```

Mvh,

Red: kladdigt, sorry.

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

## #3 — M@rtin, 2001-11-04T12:24Z

Tycker Slumpfunktionen verkar lite seg :(

Här är ett annat sätt som inte tar med inget.gif tror jag:

```
Set Databas = Server.CreateObject("ADODB.Connection")
Databas.Open ConString
SQL = "select Count(*) AS klo from tabell WHERE bild2 <>'inget.gif'"
Set RS_klo = databas.execute(SQL)

Randomize
Set rstemp = Server.Createobject("ADODB.Recordset")
SQL = "Select * from tabell WHERE bild2 <> 'inget.gif'"
rstemp.cursorlocation = 3
rstemp.cachesize = 5
rstemp.open SQL, ConString
rstemp.move Int(Rnd*RS_klo("klo"))
```

Tror det där borde funka. Men det är Vide som ska ha credit för det i så fall ;)

\[r\] du ska nog lyssna mer på @nders än på mig ;) \[/r\]

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

## #4 — jboy_87, 2001-11-04T14:54Z

Sql = "Select \* from members where not bild = 'Bilder/Medlemmar/ingen.gif'
får felmeddelandet:

> ADODB.Recordset (0x800A0BCD)
> Antingen är BOF eller EOF satt till True, eller så har aktuell post raderats. Den begärda åtgärden kräver en aktuell post.
> /main.asp, line 31

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

## #5 — LarsG, 2001-11-04T15:05Z

Hur ser rad 31 ut? Visa lite kod omkring också.

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

## #6 — jboy_87, 2001-11-04T15:26Z

\<%
  Response.Buffer = True

  Function Show()
    Randomize
    RandNum = Int(Rnd \* Ialt) + 1
    Record.MoveFirst
    For i = 1 to RandNum - 1
      **Record.MoveNext** \<--- rad 30
    next 
    Response.Write "\<a href='whois.asp?checkid=" & Record("id") & "'\>\<img src='" & Record("bild") & "' alt='" & Record("username")  & Record("username") & "' border = '1' width= '65' height= '77'\>\</a\>"
  end function

   
  Set Rs = Server.CreateObject("ADODB.Connection")
  DBPath = "DBQ=" & server.mappath("Database/members.mdb")
  Rs.Open "DRIVER={Microsoft Access Driver (\*.mdb)}; " & DBPath

  Sql = "Select count(\*) as Found from members"
  Set Record =  Rs.Execute(Sql) 

  Ialt = Record("found")
 
  Sql = "Select \* from members where not bild = 'Bilder/Medlemmar/ingen.gif'"
  Set Record =  Rs.Execute(Sql) 
%\>

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

## #7 — jboy_87, 2001-11-04T15:34Z

löste det men nu vill jag att det inte slumpas fram samma bild

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

## #8 — LarsG, 2001-11-04T15:37Z

Vad menar du med samma? Nu visar du bara en bild.

Eller menar du som visats tidigare? I så fall måste du hålla reda på vilka bilder som har visats.

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

## #9 — jboy_87, 2001-11-04T15:39Z

skriver ut så här:

   \<td\>\<%  Response.Write "\<center\>"
    		Show() %\>\</td\>
    \<td\>\<%  Response.Write "\<center\>"
  Show() %\>\</td\>
    \<td\>\<%  Response.Write "\<center\>"
  Show() %\>\</td\>
    \<td\>\<%  Response.Write "\<center\>"
  Show() %\>\</td\>

4 bilder

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

## #10 — LarsG, 2001-11-04T16:20Z

```
<%
Response.Buffer = True
Set Rs = Server.CreateObject("ADODB.Connection")
DBPath = "DBQ=" & server.mappath("Database/members.mdb")
Rs.Open "DRIVER={Microsoft Access Driver (*.mdb)}; " & DBPath

Sql = "Select count(*) as Found from members where not bild = 'Bilder/Medlemmar/ingen.gif'"
Set Record = Rs.Execute(Sql) 
Ialt = Record("found")

Sql = "Select * from members where not bild = 'Bilder/Medlemmar/ingen.gif'"
record.close
set record = nothing
Set Record = server.createobject("adodb.recordset")
record.cursorlocation = 3
record.open sql,rs
dim bilder(3)
randomize

for i = 0 to 3
  found = false
  do until true
     RandNum = Int(Rnd * Ialt)
     for j = 0 to i - 1
         if bilder(j) = RandNum then
            found = true
            exit for
         end if
     next
     if not found or i = 0 then exit do
  loop
  bilder(i) = RandNum

  record.Movefirst
  Record.Move randNum 
  Response.Write "<td><center>"
  Response.Write "<a href='whois.asp?checkid=" & Record("id") & "'><img src='" & Record("bild") & "' alt='" & Record("username") & Record("username") & "' border = '1' width= '65' height= '77'></a>"
  response.write "</td>"
next

record.close
rs.close
```

red: du får nog fixa till utskriften och lägga till lite \<table\> \<tr\> etc.

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

## #11 — jboy_87, 2001-11-04T17:11Z

va fattar inte

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

## #12 — LarsG, 2001-11-04T17:42Z

Jag tog bort funktionen show därför att
den inte passade in om du vill se till att man inte skall se samma bild flera gånger. (Dessutom så använde den globala variabler! Sluta med sådant.)

Vad är det som inte fungerar?

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

## #13 — jboy_87, 2001-11-04T19:25Z

asså jag fattar ingenting??

\<%
  Response.Buffer = True

  Function Show()
    Randomize
    RandNum = Int(Rnd \* Ialt) + 1
    Record.MoveFirst
    For i = 1 to RandNum - 1
      Record.MoveNext
    next 
    Response.Write "\<a href='whois.asp?checkid=" & Record("id") & "'\>\<img src='" & Record("bild") & "' alt='" & Record("username")& Record("syfte") & "' border = '1' width= '65' height= '77'\>\</a\>"
  end function

   
  Set Rs = Server.CreateObject("ADODB.Connection")
  DBPath = "DBQ=" & server.mappath("Database/members.mdb")
  Rs.Open "DRIVER={Microsoft Access Driver (\*.mdb)}; " & DBPath

  Sql = "Select count(\*) as Found from members where not bild = 'Bilder/Medlemmar/ingen.gif'"
  Set Record =  Rs.Execute(Sql) 

  Ialt = Record("found")
 
  Sql = "Select \* from members "
  Set Record =  Rs.Execute(Sql) 
%\>

så här skriver jag ut den:

    \<table border="0" cellpadding="2" cellspacing="0" style="border-collapse: collapse"\>
  \<tr\>
    \<td\>\<%  Response.Write "\<center\>"
    		Show() %\>\</td\>
    \<td\>\<%  Response.Write "\<center\>"
  Show() %\>\</td\>
    \<td\>\<%  Response.Write "\<center\>"
  Show() %\>\</td\>
    \<td\>\<%  Response.Write "\<center\>"
  Show() %\>\</td\>
  \</tr\>

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

## #14 — LarsG, 2001-11-04T21:15Z

Nu lade jag till några taggar så att du skall kunna använda det här i stället för det du hade tidigare. Om du vill ha funktionen att man inte visar samma bild flera gånger så passar det inte riktigt in med den struktur du hade tidigare.

```
<%
Response.Buffer = True
Set Rs = Server.CreateObject("ADODB.Connection")
DBPath = "DBQ=" & server.mappath("Database/members.mdb")
Rs.Open "DRIVER={Microsoft Access Driver (*.mdb)}; " & DBPath
Sql = "Select count(*) as Found from members where not bild = 'Bilder/Medlemmar/ingen.gif'"
Set Record = Rs.Execute(Sql) 
Ialt = Record("found")

Sql = "Select * from members where not bild = 'Bilder/Medlemmar/ingen.gif'"
record.close
set record = nothing
Set Record = server.createobject("adodb.recordset")
record.cursorlocation = 3
record.open sql,rs
dim bilder(3)
randomize

%>
<table border="0" cellpadding="2" cellspacing="0" style="border-collapse: collapse">
<tr>
<%
for i = 0 to 3
found = false
do until true
RandNum = Int(Rnd * Ialt)
for j = 0 to i - 1
if bilder(j) = RandNum then
found = true
exit for
end if
next
if not found or i = 0 then exit do
loop
bilder(i) = RandNum

record.Movefirst
Record.Move randNum 
Response.Write "<td><center>"
Response.Write "<a href='whois.asp?checkid=" & Record("id") & "'><img src='" & Record("bild") & "' alt='" & Record("username") & Record("username") & "' border = '1' width= '65' height= '77'></a>"
response.write "</td>"
next

record.close
rs.close
%>
</tr></table>
<table border="0" cellpadding="2" cellspacing="0" style="border-collapse: collapse">
<tr>
```

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

## #15 — jboy_87, 2001-11-06T22:10Z

det blir ju samma bild på alla fyra och slumpas ej

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

## #16 — LarsG, 2001-11-06T23:10Z

Kan du lägga in lite traceutskrifter så att man kan se vad som händer ?

```
response.write "RandNum = " & randNum & " då i = " & i & "<br>"
record.Movefirst

Record.Move randNum 
response.write "record pos= " & record.absolutePosition & " då i = " & i & "<br>"
```

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

## #17 — jboy_87, 2001-11-06T23:15Z

nu använder jag bara denna kod:

```
<%
Response.Buffer = True
Set Rs = Server.CreateObject("ADODB.Connection")
DBPath = "DBQ=" & server.mappath("Database/members.mdb")
Rs.Open "DRIVER={Microsoft Access Driver (*.mdb)}; " & DBPath
Sql = "Select count(*) as Found from members where not bild = 'Bilder/Medlemmar/ingen.gif'"
Set Record = Rs.Execute(Sql) 
Ialt = Record("found")
Sql = "Select * from members where not bild = 'Bilder/Medlemmar/ingen.gif'"
record.close
set record = nothing
Set Record = server.createobject("adodb.recordset")
record.cursorlocation = 3
record.open sql,rs
dim bilder(3)
randomize

%>
<table border="0" cellpadding="2" cellspacing="0" style="border-collapse: collapse">
<tr>
<%
for i = 0 to 3
found = false
do until true
RandNum = Int(Rnd * Ialt)
for j = 0 to i - 1
if bilder(j) = RandNum then
found = true
exit for
end if
next
if not found or i = 0 then exit do
loop
bilder(i) = RandNum

record.Movefirst
Record.Move randNum 
Response.Write "<td><center>"
Response.Write "<a href='whois.asp?checkid=" & Record("id") & "'><img src='" & Record("bild") & "' alt='" & Record("username") & Record("username") & "' border = '1' width= '65' height= '77'></a>"
response.write "</td>"
next

record.close
rs.close
%>
</tr></table>
<table border="0" cellpadding="2" cellspacing="0" style="border-collapse: collapse">
<tr>
</table>
```

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

## #18 — LarsG, 2001-11-06T23:20Z

Vad blir det för resultat om du lägger till dom response.write som jag skrev i mitt förra inlägg?

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

## #19 — jboy_87, 2001-11-06T23:25Z

Blir fel på Feltyp:
Kompileringsfel i Microsoft VBScript (0x800A0401)
Slut på programsats förväntas.
/test/default2.asp, line 41, column 81

```
<%
Response.Buffer = True
Set Rs = Server.CreateObject("ADODB.Connection")
DBPath = "DBQ=" & server.mappath("Database/members.mdb")
Rs.Open "DRIVER={Microsoft Access Driver (*.mdb)}; " & DBPath
Sql = "Select count(*) as Found from members where not bild = 'Bilder/Medlemmar/ingen.gif'"
Set Record = Rs.Execute(Sql) 
Ialt = Record("found")
Sql = "Select * from members where not bild = 'Bilder/Medlemmar/ingen.gif'"
record.close
set record = nothing
Set Record = server.createobject("adodb.recordset")
record.cursorlocation = 3
record.open sql,rs
dim bilder(3)
randomize

%>
<table border="0" cellpadding="2" cellspacing="0" style="border-collapse: collapse">
<tr>
<%
for i = 0 to 3
found = false
do until true
RandNum = Int(Rnd * Ialt)
for j = 0 to i - 1
if bilder(j) = RandNum then
found = true
exit for
end if
next
if not found or i = 0 then exit do
loop
bilder(i) = RandNum

record.Movefirst
Record.Move randNum 
response.write "RandNum = " & randNum & " då i = " & i & "<br>"
record.Movefirst
Record.Move randNum 
response.write "record pos= " & record.absolutePosition & " då i = " & i & "<br>"next

record.close
rs.close
%>
```

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

## #20 — jboy_87, 2001-11-06T23:27Z

blir så här också
efter att lekt med koden

RandNum = då i = 0
record pos= 1 då i = 0
RandNum = då i = 1
record pos= 1 då i = 1
RandNum = då i = 2
record pos= 1 då i = 2
RandNum = då i = 3
record pos= 1 då i = 3

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/12510-om-bilden-ingen-gif  
Nästa sida: https://www.webforum.nu/amne/asp/12510-om-bilden-ingen-gif/page2.md
