Jag hittade en kod för upp laddning utav bilder med AspJpeg här på forumet.
Men jag får det inte riktigt att funka.
Jag vill ladda upp flera bilder samtidigt och sen spara information om bilden (Picinfo) om alla samtidigt. Vet inte riktigt om ni hänger med.
Men iaf, när jag använder mig utav denna koden så funkar det inte riktigt.
Alla bilder laddas upp och sparas i vanligt format.
Men bara den första bilden sparas i vanligt format och i en thumbnail samt sparar bild informationen (Picinfo)
Vad ska man ändra i denna koden för att det ska funka för alla bilder?
<%
Set Upload = Server.CreateObject("Persits.Upload")
Path = "....\img\"
Count = Upload.Save(Path)
If Count = 0 Then
Response.Write "No images selected."
Response.End
Else
Set File = Upload.Files(1)
File.move "...\img\" & File.ExtractFileName
If File.ImageType <> "UNKNOWN" Then
Set jpeg = Server.CreateObject("Persits.Jpeg")
jpeg.Open( File.Path )
jpeg.PreserveAspectRatio = True
L = 78
jpeg.Width = L
SavePath = "....\thumb\small_" & File.ExtractFileName
If UCase(Right(SavePath, 3)) <> "JPG" Then
SavePath = SavePath & ".jpg"
End If
jpeg.Save SavePath
' Save both images in the database along with description.
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open "driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../../data/database.mdb")&";pwd=...."
set rs= Server.CreateObject("ADODB.Recordset")
SQL= "SELECT * FROM tblPICS"
rs.Open SQL,Conn,1,2
rs.AddNew
' Use File.Binary to access binary data of uploaded file.
rs("original_image")= Upload.Files(1).Filename
Set ThumbFile = Upload.OpenFile(SavePath)
rs("thumbnail") = "small_" & Upload.Files(1).Filename
rs("picinfo") = Upload.Form("picinfo")
rs("category") = Upload.Form("cat")
rs.Update
rs.Close
Set rs = Nothing
Conn.Close : Set Conn = nothing
Else
Response.Write "This is not a valid image."
Response.End
End If
End If
%>
Sen i formuläret heter fälten FILE1 , FILE2 osv och informations fältet heter bara Picinfo.
http://www.aspjpeg.com/manual_03.html har du ett exakt samma exempel på vad du är ute efter. Det är bara att lägga in samma kod som du använder när du laddar upp en fil.
http://www.aspjpeg.com/manual_03.html har du ett exakt samma exempel på vad du är ute efter. Det är bara att lägga in samma kod som du använder när du laddar upp en fil.
Hur menar du nu?
För det jag vill göra är ladda upp fler bilder samtidigt och då ska det blir thumbnails utav alla och bild informationen ska sparas för varje bild också.
För det jag vill göra är ladda upp fler bilder samtidigt och då ska det blir thumbnails utav alla och bild informationen ska sparas för varje bild också.
Ja? I manual exemplet +ASPUpload manualen står det hur man kan göra. Jag skulle gissa utan att ens har kört ASPupload eller ASPJPEG att:
Dim sPath, SavePath
sPath = Server.MapPath("....\img\")
Set Upload = Server.CreateObject("Persits.Upload")
' Save uploaded files
Upload.Save sPath
' Display paths of uploaded files
For Each File in Upload.Files
Response.Write File.Path & "<BR>"
If File.ImageType <> "UNKNOWN" Then
' Create instance of AspJpeg object
Set jpeg = Server.CreateObject("Persits.Jpeg")
' Open uploaded file
jpeg.Open(File.Path)
' Resize image according to "scale" option.
' We cannot use Request.Form, so we use Upload.Form instead.
jpeg.Width = jpeg.OriginalWidth * Upload.Form("scale") / 100
jpeg.Height = jpeg.OriginalHeight * Upload.Form("scale") / 100
SavePath = sPath & "\small_" & File.ExtractFileName
' AspJpeg always generates thumbnails in JPEG format.
' If the original file was not a JPEG, append .JPG ext.
If UCase(Right(SavePath, 3)) <> "JPG" Then
SavePath = SavePath & ".jpg"
End If
jpeg.Save SavePath
'SQL
'Orginal path: sPath & File.ExtractFileName
'Thumbnail path: Upload.OpenFile(SavePath)
Set jpeg = Nothing
End If
Next
Fungera att skapa thumb + ladda upp orginal bilden. Sen är det bara att göra rätt DB koppling till din databas och använda dig av
nej det får du inte... ASPupload har stöd för flera filer. eller vad menar du med "bild information"?
Ja när jag laddar upp bildena så har jag en ruta där man kan göra fem uppladdningar samtidigt. Sen bredvid blädra rutan för varje upp laddning har jag ett fält där man kan skriva en bild beskrivning. Som sedan sparas i tblPICS >> picinfo. Men jag vet inte riktigt hur jag ska göra för för att varje bild ska få med informationen för nu får varje bild endast med informationen som står i första fältet och inte det som står bredvid.
Du kan ju ha en räknare och ha exempelvis namn på dina descriptions:
<input type="text" name="description_0"> för bild 1, <input type="text" name="description_1"> för bild 2 osv. och när du loopar igenom "for each file in ..." så har du en räknare som lägger till 1 i värde hela tiden i slutet av loopen.
<%
Dim sPath, SavePath
sPath = Server.MapPath("img\")
Set Upload = Server.CreateObject("Persits.Upload")
' Save uploaded files
Upload.Save sPath
' Display paths of uploaded files
For Each File in Upload.Files
Response.Write File.Path & "<BR>"
If File.ImageType <> "UNKNOWN" Then
' Create instance of AspJpeg object
Set jpeg = Server.CreateObject("Persits.Jpeg")
' Open uploaded file
jpeg.Open(File.Path)
' Resize image according to "scale" option.
' We cannot use Request.Form, so we use Upload.Form instead.
jpeg.PreserveAspectRatio = True
L = 78
jpeg.Width = L
SavePath = sPath & "\small_" & File.ExtractFileName
' AspJpeg always generates thumbnails in JPEG format.
' If the original file was not a JPEG, append .JPG ext.
If UCase(Right(SavePath, 3)) <> "JPG" Then
SavePath = SavePath & ".jpg"
End If
jpeg.Save SavePath
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open "driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../../data/database.mdb")&";pwd=xxxxx"
set rs= Server.CreateObject("ADODB.Recordset")
SQL= "SELECT * FROM tblPICS"
rs.Open SQL,Conn,1,2
rs.AddNew
rs("original_image")= File.ExtractFileName
rs("thumbnail") = "small_" & File.ExtractFileName
rs("picinfo") = Upload.Form("picinfo")
rs("category") = Upload.Form("cat")
rs.Update
rs.Close : Set rs = Nothing
Conn.Close : Set Conn = nothing
Set jpeg = Nothing
End If
Next
%>
Det är ju något som måste ändras i denna kod då eller?
<%
Dim sPath, SavePath
sPath = Server.MapPath("img\")
Set Upload = Server.CreateObject("Persits.Upload")
' Save uploaded files
Upload.Save sPath
[b]dim i
i = 1[/b]
' Display paths of uploaded files
For Each File in Upload.Files
Response.Write File.Path & "<BR>"
If File.ImageType <> "UNKNOWN" Then
' Create instance of AspJpeg object
Set jpeg = Server.CreateObject("Persits.Jpeg")
' Open uploaded file
jpeg.Open(File.Path)
' Resize image according to "scale" option.
' We cannot use Request.Form, so we use Upload.Form instead.
jpeg.PreserveAspectRatio = True
L = 78
jpeg.Width = L
SavePath = sPath & "\small_" & File.ExtractFileName
' AspJpeg always generates thumbnails in JPEG format.
' If the original file was not a JPEG, append .JPG ext.
If UCase(Right(SavePath, 3)) <> "JPG" Then
SavePath = SavePath & ".jpg"
End If
jpeg.Save SavePath
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open "driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../../data/database.mdb")&";pwd=xxxxx"
set rs= Server.CreateObject("ADODB.Recordset")
SQL= "SELECT * FROM tblPICS"
rs.Open SQL,Conn,1,2
rs.AddNew
rs("original_image")= File.ExtractFileName
rs("thumbnail") = "small_" & File.ExtractFileName
rs("picinfo") = Upload.Form("picinfo[b]_" & i[/b])
rs("category") = Upload.Form("cat")
rs.Update
rs.Close : Set rs = Nothing
Conn.Close : Set Conn = nothing
Set jpeg = Nothing
End If
[b]i = i + 1[/b]
Next
%>