Avatar billede rille101 Nybegynder
01. juni 2006 - 12:40 Der er 9 kommentarer og
1 løsning

Kan ikke få trukket billede ud med aspImage

Nu har jeg næsten prøvet alt, men jeg kan simpelthen ikke få AspImage til at makke ret...

Jeg har en sti til et billede i min database.
Denne kan jeg sagtens få trukket ud.
Nu vil jeg så have AspImage til at resize billedet inden det vises. Men det er som om billedet ikke kan findes.

Min mappestruktur ser således ud:
lokalinfo/ -> indeholder filerne.....
index.asp -> Forsiden, ikke relevant
nyhed.asp -> siden hvor nyheden, inkl. billedet skal vises.
nyhederimages.asp -> siden med aspImage koden.

lokalinfo/nyhederimages/ -> mappen hvori de uploadede billeder er.

i databasen er stien til billedet:
/lokalinfo/nyhederimages/billede1.jpg

På nyheder.asp har jeg denne kode til at vise billedet gennem aspImage:
<img src="nyhederimages.asp?<%=(RSnyheder.Fields.Item("img1").Value)%>&Width=385" border="0">

Nyhederimages.asp ser således ud:
------------------------------
<%
FileName=request.querystring("FileName")
size=Cint(request.querystring("size"))
PWidth=Cint(request.querystring("Width"))
PHeight=Cint(request.querystring("Height"))
Response.ContentType = "image/jpeg"
Set Image = Server.CreateObject("AspImage.Image")
Myfolder ="pics"
Image.LoadImage Request.ServerVariables("APPL_PHYSICAL_PATH")& " lokalinfo\nyhederimages\" & FileName

'Image.AutoSize = false
'Image.FontName = "MS Sans Serif"
'Image.FontColor = vbRed
'Image.Bold = True
'Image.FontSize = 16
'Image.X = 1
'Image.Y = Image.MaxY = 5
'Image.TextOut "www.xxxx.dk", Image.X, Image.Y, true
'Image.FileName = "absolutte_sti_til_billede_mappe\" & FileName
'Image.SaveImage

ImageHeight = Image.MaxY
ImageWidth = Image.MaxX
Image.CreateButton 5,true
Image.ImageFormat = 1
Image.JPEGQuality = 80
if size>0 AND ImageWidth > size then
NewHeight = Cint(ImageHeight*size/ImageWidth)
NewWidth = size
Image.ResizeR NewWidth,NewHeight
end if
if PWidth >0 AND ImageWidth > PWidth then
NewHeight = Cint(ImageHeight*PWidth/ImageWidth)
NewWidth = PWidth
Image.ResizeR NewWidth,NewHeight
end if
if PHeight >0 AND ImageHeight > PHeight then
NewWidth = Cint(ImageWidth*PHeight/ImageHeight)
NewHeight = PHeight
Image.ResizeR NewWidth,NewHeight
end if


Response.BinaryWrite Image.Image
Set Image = Nothing
%>

Har prøvet med mange forskellige stier, og den eneste måde at få det til at virke på, er ved at placere billederne sammen med alle de andre filer, men jeg ville jo gerne have lidt styr over sagerne ved at placere billederne i en mappe for sig selv (nyhederimages)

Er der nogen der kan hjælpe mig med at få skidtet til at virke???
Avatar billede cpufan Juniormester
01. juni 2006 - 15:06 #1
Image.LoadImage Request.ServerVariables("APPL_PHYSICAL_PATH")& " lokalinfo\nyhederimages\" & FileName

ændres til

Image.LoadImage Request.ServerVariables("APPL_PHYSICAL_PATH")& " nyhederimages\" & FileName

er ikke sikker på backslashen

udskriv evt din sti til billedet for at dobbelttjekke
Avatar billede mitbrugernavn Praktikant
01. juni 2006 - 16:46 #2
FileName=request.querystring("FileName") 'hvis det er billednavnet så
size=Cint(request.querystring("size"))
PWidth=Cint(request.querystring("Width"))
PHeight=Cint(request.querystring("Height"))
Response.ContentType = "image/jpeg"
Set Image = Server.CreateObject("AspImage.Image")
Myfolder ="pics"
Image.LoadImage Server.Mappath("../nyhederimages/"& FileName)

'men prøv at udskrive Filename
Avatar billede rille101 Nybegynder
01. juni 2006 - 22:16 #3
Hej begge, og tak for jeres svar.
der er desværre ikke nogen af de to der virker. Hvordan får jeg udskrevet Filename?
Avatar billede mitbrugernavn Praktikant
02. juni 2006 - 08:38 #4
response.write FileName

'det er for at se hvad der ligger i request.querystring("FileName") - at det ikke er hele stien men kun billednavnet

hvad står der i request.querystring("FileName") ????
Avatar billede rille101 Nybegynder
02. juni 2006 - 20:10 #5
Jeg ved ikke om jeg gør det helt rigtigt...

Jeg skriver <%response.write FileName%> et sted på nyhed.asp
men der kommer ikke noget ud af den streng.

Jeg har prøvet også at skrive request.querystring(FileName") ind på siden, men det hjælper heller ikke.

Men er der i det hele taget nogen steder, hvor nyhederimages.asp sender FileName med til nyhed.asp???
Avatar billede rille101 Nybegynder
02. juni 2006 - 20:34 #6
Når jeg højreklikker og vælger egenskaber på der, hvor billedet skulle have været, finder jeg følgende sti.

http://www.ballumby.net/lokalinfo/nyhederimages.asp?/lokalinfo/nyhederimages/Ballum023.jpg&Width=385

Siger det jer noget?
Avatar billede rille101 Nybegynder
02. juni 2006 - 22:19 #7
Jeg har nu fundet fejlen(e):
Der var en dum fejl her:

<img src="nyhederimages.asp?<%=(RSnyheder.Fields.Item("img1").Value)%>&Width=385" border="0">

skulle være:
<img src="nyhederimages.asp?FileName<%=(RSnyheder.Fields.Item("img1").Value)%>&Width=385" border="0">

Og eftersom jeg i database feltet har skrevet:
/lokalinfo/nyhederimages/billede1.jpg

Så skal
Image.LoadImage Request.ServerVariables("APPL_PHYSICAL_PATH")& " lokalinfo\nyhederimages\" & FileName

være:
Image.LoadImage Request.ServerVariables("APPL_PHYSICAL_PATH") & FileName

Men tak for forsøgene :)

Venlig hilsen
Rene
Avatar billede mitbrugernavn Praktikant
03. juni 2006 - 06:51 #8
på den side hvor FileName=request.querystring("FileName")  er kan du altid udskrive den

response.write FileName
Derved kan du se om der er noget med og hvad der er med - og det tyder på at der var mere med end det du regnede med.
Avatar billede rille101 Nybegynder
15. juni 2006 - 15:32 #9
<img src="nyhederimages.asp?FileName=<%=(RSnyheder.Fields.Item("img1").Value)%>&Width=385" border="0">

Havde glemt = tegnet efter filename...
Avatar billede mitbrugernavn Praktikant
15. juni 2006 - 15:51 #10
jo takker for point .....;-))
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester