webForumDet fria alternativet

Kolla om bild finns i mapp

ASP

24 svar · 653 visningar · startad av Thompa__85

Medlem sedan aug. 2002600 inlägg
Frågan#1

Hejsan!
Vill göra en enkel if sats där den kollar om det finns en bild som är lika med användarnamnet.. så här:

if "press_bilder/rs("anv").gif" = Finns then
skriv ut bilden
else
rs("bild")
end if

Alltså, kollar om tex Thompa__85.gif finns i mappen press_bilder, om inte så ska den skriva ut rs("bild")
Men hur kolar jag om den finns?

Mvh Adde

Medlem sedan feb. 200112 078 inlägg
#2

Kan bugga, är inte säker på BuildPath.

<%
strPath = "press_bilder"
set fso = server.createobject("scripting.filesystemobject)"
if fso.fileexists(server.mappath(fso.buildpath(strPath, rs("anv") & ".gif"))) then %>
   <img src="<% =fso.buildpath(strPath, rs("anv")) %>.gif">
<% else %>
   <img src="<% =rs("bild")%> ">
<% end if
set fso = nothing
%>

RED. Alla dessa paranteser. :l

Medlem sedan aug. 2002600 inlägg
#3

Njae.. den säger så här:

Server object error 'ASP 0177 : 800401f3' 

Server.CreateObject Failed 

/2/minsida.asp, line 228 

800401f3

rad 228:
set fso = server.createobject("scripting.filesystemobject)")

varför? :q

Medlem sedan feb. 200112 078 inlägg
#4
set fso = server.createobject("scripting.filesystemobject")
Medlem sedan aug. 2002600 inlägg
#5

Sådär, nu funkar det!
Nästa problem, inte bara .gif.. utan även .jpg...
hur? :OO

Medlem sedan feb. 200112 078 inlägg
#6

Thompa__85 skrev:

Sådär, nu funkar det!
Nästa problem, inte bara .gif.. utan även .jpg...
hur? :OO

Ja du, finns inte ändelsen med i databasen eller om alla filer inte har samma ändelse, så har du ett problem.

Det bästa är att ha en separat kolumn i databasen som innehåller filnamnet eller att ha samma ändelse på alla filer.

Medlem sedan aug. 2002600 inlägg
#7

det går inte att modda om denna rad så den kollar om .jpg oxå finns?

<img src="<% =fso.buildpath(strPath, rs("anv")) %>.gif">
Medlem sedan feb. 200112 078 inlägg
#8

Vi gör såhär istället.

<%
strPath = "press_bilder"
set fso = server.createobject("scripting.filesystemobject)"

If fso.fileexists(server.mappath(fso.buildpath(strPath, rs("anv") & ".gif"))) then
   sImageType = ".gif"
elseif fso.fileexists(server.mappath(fso.buildpath(strPath, rs("anv") & ".jpg"))) then
   sImageType = ".jpg"
end if
If sImageType <> "" then
%>
   <img src="<% =fso.buildpath(strPath, rs("anv")) & sImageType%>">
<% else %>
   <img src="<% =rs("bild")%> ">
<% end if
set fso = nothing
%>
Medlem sedan aug. 2002600 inlägg
#9

Tackar! Det funkar kanon!
Förutom att när jag gör så här:

<a href="javascript:CaricaFoto('<%=fso.buildpath(strPath, rs("anv")) & sImageType%>')" border="0"><img src="<% =fso.buildpath(strPath, rs("anv")) & sImageType%>" width="93" height="122" border="0">

Så hittar den inte bilden... Någon som vet varför?

Medlem sedan aug. 2002600 inlägg
#10

Eller asså man ser bilden, men när man klickar på den så ska den öppnas i ett annat fönster, men då hittar den inte bilden :s

Medlem sedan maj 2002560 inlägg
#11

Ta bort mellanslaget så ska du se att det fungerar

java script:
Medlem sedan aug. 2002600 inlägg
#12

Har gjort det och det funkar ändå inte :/

Medlem sedan maj 2002560 inlägg
#13

hur ser din CaricaFoto-funktion ut? kan du postra koden för den?

Medlem sedan aug. 2002600 inlägg
#14

Så här ser den ut:

<SCRIPT LANGUAGE="JavaScript">
<!-- Begin
function CaricaFoto(img){
  foto1= new Image();
  foto1.src=(img);
  Controlla(img);
}
function Controlla(img){
  if((foto1.width!=0)&&(foto1.height!=0)){
    viewFoto(img);
  }
  else{
    funzione="Controlla('"+img+"')";
    intervallo=setTimeout(funzione,20);
  }
}
function viewFoto(img){
  largh=foto1.width+20;
  altez=foto1.height+20;
  stringa="width="+largh+",height="+altez;
  finestra=window.open(img,"",stringa);
}
//  End -->
</script>

Men så här är det, att när den kör denna:

<% else %>
   <a href="javascript:CaricaFoto('<%=rs("bild")%>')" border="0">
  <img src="<%=rs("bild")%>" width="93" height="122" border="0" /></a>

Då funkar det fint, men inte när jag kör den andra :(

Medlem sedan maj 2002560 inlägg
#15

och att skriva ut:

<%=rs("bild")%>

och

<%=fso.buildpath(strPath, rs("anv")) & sImageType%>

ger samma resultat? Punkten på rätt ställe, bilden finns där den ska i mappträdet, du länkar till rätt bild o.s.v.?

Medlem sedan aug. 2002600 inlägg
#16

asså, rs("bild") är en annan bild...
men så här skriver <%=fso.buildpath(strPath, rs("anv")) & sImageType%> ut: press_bilder\Thomsson.jpg

Men alltså, bilden syns ju! men när man klickar på den så funkar det inte, är inte det väldigt mysko?

Medlem sedan maj 2002560 inlägg
#17

men det fungerar med rs("bild") i samma funktion?! låter alldeles för mysko för att jag ska kunna lösa det...

skall det inte vara press_bilder**/**Thomsson.jpg föressten?

Medlem sedan aug. 2002600 inlägg
#18

LR^evil.sid skrev:

skall det inte vara press_bilder**/**Thomsson.jpg föressten?

Kanske de, men hur gör jag de då? ;)

Medlem sedan maj 2002560 inlägg
#19

gör en liten fuling

<%=Replace(fso.buildpath(strPath, rs("anv")), "\", "/") & sImageType%

men vart läggs den till är ju frågan? den sitter ju inte på strPath eftersom den var "pres_bilder". Lägger du inte till den själv någonstans?

Medlem sedan aug. 2002600 inlägg
#20

hmm.. så här ser min kod ut:

<%
strPath = "press_bilder"
set fso = server.createobject("scripting.filesystemobject")

If fso.fileexists(server.mappath(fso.buildpath(strPath, rs("anv") & ".gif"))) then
   sImageType = ".gif"
elseif fso.fileexists(server.mappath(fso.buildpath(strPath, rs("anv") & ".jpg"))) then
   sImageType = ".jpg"
end if
If sImageType <> "" then
%>
   <a href="javascript:CaricaFoto('http://www.dastar.se/2/<% =fso.buildpath(strPath, rs("anv")) & sImageType%>')" border="0"><img src="<% =fso.buildpath(strPath, rs("anv")) & sImageType%>" width="93" height="122" border="0"></a>
<% else %>
   <a href="javascript:CaricaFoto('<%=rs("bild")%>')" border="0">
  <img src="<%=rs("bild")%>" width="93" height="122" border="0" /></a>
<% end if
'set fso = nothing
%>

så har inte lagt in nått själv.. så fattar inte vart \ kommer ifrån...?

260 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
127 ms — ändringar (db)