webForumDet fria alternativet

Snälla jag behöver lite input!

ASPur ASP

10 svar · 276 visningar · startad av manne

Medlem sedan dec. 20009 inlägg
Frågan#1

Jag får inte min upload att funka. I min access databas "olle.mdb" har jag 2 recordset "Id" och "bild". Jag har snöat länge med detta. Vad är det som är fel, kan nån hjälpa mig med lite kod.

<%

Set Upload = Server.CreateObject("Persits.Upload.1")

Upload.SaveVirtual("d:/clients/guldfot.nu/wwwroot/bilder")

Set File = Upload.Files(1)

filtyp = File.ImageType
filstorlek = File.Size
bild = upload.Form("FILE") 

If filtyp = "GIF" or filtyp = "JPG" or filtyp = "gif" or filtyp = "jpg" Then

Set Connection = Server.CreateObject("ADODB.Connection")
Connection.Open "driver={Microsoft Access Driver (*.mdb)};dbq=d:\clients\guldfot.nu\wwwroot\data\olle.mdb"

SQLStmt = "Insert into tabell "
SQLStmt = SQLStmt & " (bild)"
SQLStmt = SQLStmt & " Values('" & bild & "')"
Connection.Execute(SQLStmt)
SET SQLStmt = Nothing

SQLStmt = "Select Max(Id) as senasteid from tabell"
SET RS = Connection.Execute(SQLStmt)
senasteid = RS("senasteid")
RS.Close
SET SQLStmt = Nothing

If file.ImageType = "gif" Then
extension = "gif"
elseif file.ImageType = "jpg" Then
extension = "jpg"
elseif file.ImageType = "GIF" Then
extension = "gif"
elseif file.ImageType = "JPG" Then
extension = "jpg"
End If

filnamn = "bild" & senasteid & extension

For Each File in Upload.Files
File.Copy "d:\clients\guldfot.nu\wwwroot\bilder\bild" & senasteid & extension
File.Delete 
Next

SQLStmt = "Update tabell "
SQLStmt = SQLStmt & " SET Filnamn = '" & Filnamn & "'"
SQLStmt = SQLStmt & " Where Id = " & senasteid
Connection.Execute(SQLStmt)
SET SQLStmt = Nothing

Connection.Close

End If 

%>

------------------
manne

Medlem sedan feb. 20001 590 inlägg
#2

Vad är det som strlar? Hamnar inte bilden på servern, eller sparas inte informationen i db'n?

Försök först att bara ladda upp bilden, sedan kan du mixtra med databasen.

Det jag snabbt kan se är följande:
-> Set File = Upload.Files(1)
ska det inte vara
->Set File = Upload.Files(0)

Om du bara har en fil?

Ett litet tips:

du behöver inte bry dig om att döpa om filerna till jpg eller gif. Du kan isjälva verket kalla dom vad du vill, för filtypsinformationen finns i bildnamnet.

/T

------------------
------------------->8 klipp här!!

Medlem sedan dec. 20009 inlägg
#3

När jag submittar från min form.asp får jag "500 internal server error".
Jag skall kolla upp det, tack så länge!

------------------
manne

Medlem sedan dec. 19996 721 inlägg
#4

för filtypsinformationen finns i bildnamnet.

Inte nödvändigtvis....det är bra att kolla

Medlem sedan feb. 20001 590 inlägg
#5

"500 internal server error".

Kan vara att skrivrättigheter saknas där bilden skall sparas.

Inte nödvändigtvis....det är bra att kolla

Jaha ? .jpg .gif .png är ju dom bilder man använder, och i dom står bildinformationen.
Ta en bild ex. jaguar.jpg och döp om den till jaguar.gif funkar perfekt.

(nu kollar han ju innan att det bara sker en uppladdning av jpg o gif)

/T

------------------
------------------->8 klipp här!!

Medlem sedan juni 200032 967 inlägg
#6

500 server error: ett tecken på att webbutvecklare skall stänga av 'vänliga felmeddelanden' i internet explorer.

då får man nämligen reda på vad det är för fel, liksom, för det mesta.

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
if i'm not back in five minutes, just wait longer.</A>

Medlem sedan dec. 20009 inlägg
#7

Tack alla för hjälpen!

Ni fick mig på andra tankar. Nu funkar det klockrent.

------------------
manne

Medlem sedan juni 200032 967 inlägg
#8

vi nyfnikna vill förstås veta vad det var för fel, och hur du löste det! :)

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
if i'm not back in five minutes, just wait longer.</A>

Medlem sedan dec. 19996 721 inlägg
#9

Jaha ? .jpg .gif .png är ju dom bilder man använder, och i dom står bildinformationen.

Inte nödvändigtvis. På Macar, t.ex., används inte filslut för typningen, och man ska väl få ladda upp från Mac också?

Ta en bild ex. jaguar.jpg och döp om den till jaguar.gif funkar perfekt.

Vad funkar perfekt?

Medlem sedan feb. 20001 590 inlägg
#10

Det jag menar är att du kan ta en bild ex. jaguar.jpg och döpa om den till jaguar.gif

Vad jag menar är att bildformatet / kodningen finns i bildinformationen, och har egentligen inget att göra med filändelsen, som är till för op-systemet.

Webbläsarna klarar av att visa den ändå. Nu vet jag inte om det finns någon större vits med det...

/T

------------------
------------------->8 klipp här!!

[Redigerat av Toonster den 14 jan 2001]

Medlem sedan dec. 20009 inlägg
#11

Tjena @nders, givetvis skall jag dela med mig. Vad var fel? Jag hade glömt ("hjärnsläpp")att lägga till 3 recordset i min databas (info, filnamn och storlek).
I nedanstående kod har jag också lagt till nya poster som skall läggas in. Det som händer är att bilden som laddas upp får namnet bild+id+filändelse och hamnar i recordset(filnamn). Tex om jag laddar upp en bild som heter namn.gif och är den fjärde bilden (id=4)får bilden namnet "bild4.gif".

<%

Set Upload = Server.CreateObject("Persits.Upload.1")

Upload.SaveVirtual("bilder")

Set File = Upload.Files(1)

filtyp = File.ImageType
filstorlek = File.Size
info = upload.Form("info") 
plats = upload.Form("plats")
ingang = upload.Form("ingang")
utgang = upload.Form("utgang")
typ = upload.Form("typ")

If filtyp = "GIF" or filtyp = "JPG" or filtyp = "gif" or filtyp = "jpg" Then

Set Connection = Server.CreateObject("ADODB.Connection")
Connection.Open "driver={Microsoft Access Driver (*.mdb)};dbq=d:\clients\guldfot.nu\wwwroot\data\olle.mdb"

SQLStmt = "Insert into tabell "
SQLStmt = SQLStmt & " (info, storlek, plats, ingang, utgang, typ)"
SQLStmt = SQLStmt & " Values('" & beskrivning & "', " & filstorlek & ", '" & plats & "', '" & ingang & "', '" & utgang & "', '" & typ & "')"
Connection.Execute(SQLStmt)
SET SQLStmt = Nothing

SQLStmt = "Select Max(Id) as senasteid from tabell"
SET RecordSet = Connection.Execute(SQLStmt)
senasteid = RecordSet("senasteid")
RS.Close
SET SQLStmt = Nothing

If file.ImageType = "gif" Then
extension="." & LCase(File.Imagetype)
elseif file.ImageType = "jpg" Then
extension="." & LCase(File.Imagetype)
elseif file.ImageType = "GIF" Then
extension="." & LCase(File.Imagetype)
elseif file.ImageType = "jpg" Then
extension="." & LCase(File.Imagetype)
End If

filnamn = "bild" & senasteid & extension

For Each File in Upload.Files
File.Copy "d:\clients\emerc1.nu\wwwroot\bilder\bild" & senasteid & extension
File.Delete 
Next

SQLStmt = "Update tabell "
SQLStmt = SQLStmt & " SET Filnamn = '" & Filnamn & "'"
SQLStmt = SQLStmt & " Where Id = " & senasteid
Connection.Execute(SQLStmt)
SET SQLStmt = Nothing

Connection.Close

End If 

%>

------------------
manne

143 ms totalt · 3 externa anrop · v20260731065814-full.4bcf49fe
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
141 ms — hämta tråd, inlägg och bilagor (db)