Frågan 8 mars 2009 12:38 #1 Min form som jag skickar bilden från är
<form method="post" name="frmUpload" action="/pictureupload/preupload.asp" enctype="multipart/form-data">
Skickar vidare till en sida för att kolla så att värdet kommer med
<%varUpload = request.form("frmUpload")
varUsername = Session("username")
varUID = Session("userID")
if varUpload <> "" then
response.write frmUpload
else
response.write "Din bild "& frmUpload &" kunde inte laddas upp<br>"
response.write "Inloggad som "& varUsername &" (userID "& userID &")<br>"
response.write "<a href=""/settings/change/photo.asp"">Tillbaka</a>"
end if
När jag kommer hit får jag inte med nåt värde alls, kommer inte vidare till nästa sida som ska ladda upp och förminska
<!-- #include virtual="/include/dbconn.asp" -->
<!-- #include virtual="/include/variabler.asp" -->
<%'Ladda upp den valda bilden
Set Upload = Server.CreateObject("Persits.Upload.1")
Upload.Save(Server.MapPath("/images/users/"))
'Sätt lite variabler
userID = Session("userID")
username = Session("username")
strPath = Upload.Form("frmUpload")
filnamn = Right(strPath, Len(strLink) - InStrRev(strPath, "\"))
'Skala ner den uppladdade bilden
Set Jpeg = Server.CreateObject("Persits.Jpeg")
response.write "Filnamnet är "& filnamn &" , "&strPath
response.end
'Jpeg.Open Server.Mappath("/images/users/"& filnamn &"")
L = 140
Jpeg.Width = L
Jpeg.Height = Jpeg.OriginalHeight * L / Jpeg.OriginalWidth
Jpeg.Save Server.Mappath("../images/users/thumbnails")
' SET objConn = connect()
' picture = "update tblUsers set picture='" & FileName & "' , fotovalidering=1 where userID=" & userID
' objConn.Execute(picture)
' Set objConn = Nothing
' sTo = "stefan@stene.nu"
' sFrom = "image@stene.nu"
' sSubject = "Fotovalidering från " & username & " [medlemsID " & userID & "]"
' sTextBody = "Det har anlänt ett nytt foto som ska valideras på "& title
' Set JMail = Server.CreateObject("JMail.SMTPMail")
' JMail.ServerAddress = "smtp.axentus.net"
' JMail.Sender = username
' JMail.Silent = true
' JMail.Logging = true
' JMail.AddRecipientBCC "stefan@stene.nu"
' JMail.Subject = sSubject
' JMail.Body = sTextBody
' JMail.Priority = 1
' If Not JMail.execute Then
' Response.Write( "ERROR MESSAGE: " & JMail.ErrorMessage & "<BR>" & vbcrlf )
' Response.Write( "ERROR SOURCE: " & JMail.ErrorSource & "<BR>" & vbcrlf )
' Response.Write( "LOG: <pre>" & JMail.Log & "</pre>" & vbcrlf )
' Else
' JMail.execute
' End If
Response.Redirect "/pictureupload/validatePhoto.asp?filename=" & FileName & "&id=" & userID & "&usr=" & username & "&size=" & File.Size & "&file=" & File.FileName%>
Du kan inte skicka Request.Form från en sida till en annan utan en <form> postning. Du få flytta kontrollen till samma sida där det är "OK" att lägga upp bilden.
voigtann1 skrev:
Du kan inte skicka Request.Form från en sida till en annan utan en <form> postning. Du få flytta kontrollen till samma sida där det är "OK" att lägga upp bilden.
Innan jag hade "mellansidan" så hade jag fprm på ena sidan och tog emot med upload.form på andra men det ville inte funka ändå
WebbisNet skrev:
<%'Ladda upp den valda bilden
Set Upload = Server.CreateObject("Persits.Upload.1")
Upload.Save(Server.MapPath("/images/users/"))
'Sätt lite variabler
userID = Session("userID")
username = Session("username")
strPath = Upload.Form("frmUpload")
filnamn = Right(strPath, Len(strLink) - InStrRev(strPath, "\"))
Ser minst två fel med denna kod:
1. Du anger inte något filnamn vid save-metoden och du anropar den innan du sätter sökvägen.
2. Du sätter sökvägen ifrån formtaggen. frmUpload har du satt på form-taggen på sidan innan, du måste hämta ifrån filfältet.
doggelito skrev:
WebbisNet skrev:
<%'Ladda upp den valda bilden
Set Upload = Server.CreateObject("Persits.Upload.1")
Upload.Save(Server.MapPath("/images/users/"))
'Sätt lite variabler
userID = Session("userID")
username = Session("username")
strPath = Upload.Form("frmUpload")
filnamn = Right(strPath, Len(strLink) - InStrRev(strPath, "\"))
Ser minst två fel med denna kod:
1. Du anger inte något filnamn vid save-metoden och du anropar den innan du sätter sökvägen.
2. Du sätter sökvägen ifrån formtaggen. frmUpload har du satt på form-taggen på sidan innan, du måste hämta ifrån filfältet.
På nr 1 så vet jag ju inte vilket filnamn den uppladdade bilden kommer att ha så då räcker det bara med var katalogen ska ligga och hur menar du med nr 2?
Jag har dålig koll på hur persits upload fungerar och tydligen kallar man på savemetoden utan filnamn precis som du gör. Förvirrande metodnamn tycker jag! :)
Du kan inte hämta filnamnet från strPath = Upload.Form("frmUpload") då frmUpload är formtaggen och inte filefältet.
Här kan du läsa om hur du plockar ut filnamnet:
http://www.aspupload.com/manual_db.html
skrev
<input size="30" type="file" name="fileupload">
och ska kolla så jag får med filnamnet
<%'Ladda upp den valda bilden
Set Upload = Server.CreateObject("Persits.Upload.1")
Upload.Save(Server.MapPath("/images/users/"))
'Sätt lite variabler
userID = Session("userID")
username = Session("username")
strPath = Upload.Form("fileupload")
filnamn = Right(strPath, Len(strLink) - InStrRev(strPath, "\"))
'Skala ner den uppladdade bilden
Set Jpeg = Server.CreateObject("Persits.Jpeg")
response.write "Filnamnet är "& filnamn &" , "&strPath
response.end
men får ett tomt resultat
AspUpload.com skrev:
' Obtain file object
Set File = Upload.Files("THEFILE")
filnamn = File.Filename
Titta på deras exempel vetja! ;)
http://www.aspupload.com/manual_db.html
set uppladdadBild = Upload.Files("fileupload")
'filnamn = Right(uppladdadBild, Len(strLink) - InStrRev(uppladdadBild, "\"))
'Skala ner den uppladdade bilden
Set Jpeg = Server.CreateObject("Persits.Jpeg")
response.write uppladdadBild
response.end
ger mig
Response object error 'ASP 0185 : 80020003'
Missing Default Property
/pictureupload/upload.asp, line 0
A default property was not found for the object.
@nders Medlem sedan juni 2000 32 967 inlägg Du kan inte "skriva ut" ett objekt. Läs igen. Det räcker nog med att läsa dogges korta citat.
Detta gav mig filnamnet men då även hela sökvägen, hur kortar man ner sökvägen till bara den uppladdade filens namn
Set File = Upload.Files("fileupload")
If Not File Is Nothing Then
Response.Write File.Path
End If
response.end
Du kör File.Path, du är ute efter File.Filename som doggelito har skrivit.
Allt funkar som det ska nu, förutom skalningen av bilden........
'Skala ner den uppladdade bilden
Set Jpeg = Server.CreateObject("Persits.Jpeg")
Set File = Upload.Files("fileupload")
Jpeg.Open Server.Mappath("/images/users/"&File.Filename)
L = 140
Jpeg.Width = L
Jpeg.Height = Jpeg.OriginalHeight * L / Jpeg.OriginalWidth
Jpeg.Save Server.Mappath("../images/users/thumbnails")
skall det vara ../images på save? skall det inte bara vara images/
???
måste ju gå tillbaka i strukturen från den plats koden ligger i
På ena platsen har du:
Jpeg.Open Server.Mappath("/images/users/"&File.Filename)
Och på nästa:
Jpeg.Save Server.Mappath("../images/users/thumbnails")
Hur ser din mappstruktur egentligen ut?
jag var enbart blind där,
får access denied nu
'Skala ner den uppladdade bilden
Set Jpeg = Server.CreateObject("Persits.Jpeg")
Set File = Upload.Files("fileupload")
Jpeg.Open Server.Mappath("../images/users/"&File.Filename)
L = 140
Jpeg.Width = L
Jpeg.Height = Jpeg.OriginalHeight * L / Jpeg.OriginalWidth
Jpeg.Save Server.Mappath("../images/users/thumbnail/")
Kolla att du har rättigheter att skriva till mappen thumbnail
voigtann1 skrev:
Kolla att du har rättigheter att skriva till mappen thumbnail
när jag skrev in file.filename på den andra raden med efter /thumbnail så funkade det