11. maj 2007 - 08:22Der er
13 kommentarer og 1 løsning
Tjek på formfelter
Hejsa
Jeg har en formular, som opdaterer en db og uploader et billede. Nu skal jeg så have lavet validering på en række af felterne, men det kan jeg slet ikke få til at virke. :(
Følgende felter skal valideres: mindstepris // skal være et tal startpris // skal være et tal ovs // skal være udfyldt og max 150 tegn
Her er min kode der uploader og opdaterer db: -------------------------------------
Set rs = Server.CreateObject("ADODB.Recordset") strSQL = "select * from tbl_auktion" rs.Open strsql, conn, 1, 3
Set Upload = Server.CreateObject("Persits.Upload") Upload.OverwriteFiles = False upload.save for each file in Upload.Files if (lCase(file.ext) = ".gif" or lCase(file.ext) = ".jpg") and File.Size < 50000 then file.saveAs server.mappath("images/upload/") &"/"& File.FileName rs.AddNew rs("ovs") = Upload.Form("ovs") rs("txt") = Upload.Form("txt") rs("dato") = Upload.Form("dato") rs("mindstepris") = Upload.Form("mindstepris") rs("startpris") = Upload.Form("startpris") rs("budforoegelse") = Upload.Form("budforoegelse") rs("stand") = Upload.Form("stand") rs("bruger_id") = Upload.Form("session_id") rs("ip_log") = Upload.Form("ip_log") rs("billede") = file.FileName rs("dato_ned") = cDate(Upload.Form("dato")) + cLng(Upload.Form("dage")) rs.update else response.redirect("opret_auktion.asp?menu=fodboldauktioner&etx=Billedet er for stort eller forkert filtype.") end if next response.redirect("opret_auktion.asp?menu=fodboldauktioner&action=oprettet")
end if ------------------------------------ På forhånd tak
Ændre: for each file in Upload.Files if (lCase(file.ext) = ".gif" or lCase(file.ext) = ".jpg") and File.Size < 50000 then file.saveAs server.mappath("images/upload/") &"/"& File.FileName
Til: for each file in Upload.Files continue = true if not (lCase(file.ext) = ".gif" or lCase(file.ext) = ".jpg") then continue = false if File.Size > 50000 then continue = false if not isNumeric(Upload.Form("mindstepris")&"") then continue = false if not isNumeric(Upload.Form("startpris")&"") then continue = false if len(trim(Upload.Form("startpris")&"")) = 0 or len(trim(Upload.Form("startpris")&"")) > 150 then continue = false if continue then file.saveAs server.mappath("images/upload/") &"/"& File.FileName
Jeg skal så bare have den til at redirecte til opret_auktion.asp?etx=Alle felter skal udfyldes&ovs=" & request.form("ovs") &"&mindstepris=" & request.form("mindstepris") &" osv osv, såfremt at nogle af felterne ikke er udfyldt korrekt.
Hvis jeg i det hele taget kan benytte request.form i den sammenhæng?
Set rs = Server.CreateObject("ADODB.Recordset") strSQL = "select * from tbl_auktion" rs.Open strsql, conn, 1, 3 Set Upload = Server.CreateObject("Persits.Upload") Upload.OverwriteFiles = False upload.save
if not isNumeric(Upload.Form("mindstepris")&"") then response.redirect("opret_auktion.asp?menu=fodboldauktioner&etx=Mindstepris skal være tal.") end if if not isNumeric(Upload.Form("startpris")&"") then response.redirect("opret_auktion.asp?menu=fodboldauktioner&etx=Startpris skal være tal.") end if if len(trim(Upload.Form("ovs")&"")) = 0 or len(trim(Upload.Form("ovs")&"")) > 150 then response.redirect("opret_auktion.asp?menu=fodboldauktioner&etx=Ovs skal være mellem 1-150 tegn.") end if
Set File = Upload.Files("file") If Not File Is Nothing Then if (lCase(file.ext) = ".gif" or lCase(file.ext) = ".jpg") and File.Size < 50000 then file.saveAs server.mappath("images/upload/") &"/"& File.FileName rs.AddNew rs("ovs") = Upload.Form("ovs") rs("txt") = Upload.Form("txt") rs("dato") = Upload.Form("dato") rs("mindstepris") = Upload.Form("mindstepris") rs("startpris") = Upload.Form("startpris") rs("budforoegelse") = Upload.Form("budforoegelse") rs("stand") = Upload.Form("stand") rs("bruger_id") = Upload.Form("session_id") rs("ip_log") = Upload.Form("ip_log") rs("billede") = file.FileName rs("dato_ned") = cDate(Upload.Form("dato")) + cLng(Upload.Form("dage")) rs.update else response.redirect("opret_auktion.asp?menu=fodboldauktioner&etx=Billedet er for stort eller forkert filtype.") end if elseif response.redirect("opret_auktion.asp?menu=fodboldauktioner&etx=Ingen fil uploaded.") End If response.redirect("opret_auktion.asp?menu=fodboldauktioner&action=oprettet")
response.redirect("opret_auktion.asp?menu=fodboldauktioner&etx=Mindstepris skal være tal.&ovs="& server.urlEncode(Upload.Form("ovs")) &"&txt="& server.urlEncode(Upload.Form("txt")) &"&dato="& server.urlEncode(Upload.Form("txt")) ...osv...)
Nu har jeg lige prøvet at rette koden til: ----------------------- if not isNumeric(Upload.Form("mindstepris")&"") then response.redirect("opret_auktion.asp?menu=fodboldauktioner&etx=Overskrift skal være mellem 1-150 tegn.&ovs="& server.urlEncode(Upload.Form("ovs")) &"&txt="& server.urlEncode(Upload.Form("txt")) &"&dato="& server.urlEncode(Upload.Form("dato"))&"&mindstepris="& server.urlEncode(Upload.Form("mindstepris"))&"&budforoegelse="& server.urlEncode(Upload.Form("budforoegelse"))&"&stand="& server.urlEncode(Upload.Form("stand"))&"&ip_log="& server.urlEncode(Upload.Form("ip_log"))&"&startpris="& server.urlEncode(Upload.Form("startpris"))&")") end if if not isNumeric(Upload.Form("startpris")&"") then response.redirect("opret_auktion.asp?menu=fodboldauktioner&etx=Startpris skal være et helt tal.&ovs="& server.urlEncode(Upload.Form("ovs")) &"&txt="& server.urlEncode(Upload.Form("txt")) &"&dato="& server.urlEncode(Upload.Form("dato"))&"&startpris="& server.urlEncode(Upload.Form("startpris"))&"&budforoegelse="& server.urlEncode(Upload.Form("budforoegelse"))&"&stand="& server.urlEncode(Upload.Form("stand"))&"&ip_log="& server.urlEncode(Upload.Form("ip_log"))&")")
end if if len(trim(Upload.Form("ovs")&"")) = 0 or len(trim(Upload.Form("ovs")&"")) > 150 then 'response.redirect("opret_auktion.asp?menu=fodboldauktioner&etx=Ovs skal være mellem 1-150 tegn.") response.redirect("opret_auktion.asp?menu=fodboldauktioner&etx=Overskrift skal være mellem 1-150 tegn.&ovs="& server.urlEncode(Upload.Form("ovs")) &"&txt="& server.urlEncode(Upload.Form("txt")) &"&dato="& server.urlEncode(Upload.Form("dato"))&"&mindstepris="& server.urlEncode(Upload.Form("mindstepris"))&"&budforoegelse="& server.urlEncode(Upload.Form("budforoegelse"))&"&stand="& server.urlEncode(Upload.Form("stand"))&"&ip_log="& server.urlEncode(Upload.Form("ip_log"))&"&startpris="& server.urlEncode(Upload.Form("startpris"))&")") end if
Set File = Upload.Files("file") If Not File Is Nothing Then if (lCase(file.ext) = ".gif" or lCase(file.ext) = ".jpg") and File.Size < 50000 then file.saveAs server.mappath("images/upload/") &"/"& File.FileName rs.AddNew rs("ovs") = Upload.Form("ovs") rs("txt") = Upload.Form("txt") rs("dato") = Upload.Form("dato") rs("mindstepris") = Upload.Form("mindstepris") rs("startpris") = Upload.Form("startpris") rs("budforoegelse") = Upload.Form("budforoegelse") rs("stand") = Upload.Form("stand") rs("bruger_id") = Upload.Form("session_id") rs("ip_log") = Upload.Form("ip_log") rs("billede") = file.FileName rs("dato_ned") = cDate(Upload.Form("dato")) + cLng(Upload.Form("dage")) rs.update else response.redirect("opret_auktion.asp?menu=fodboldauktioner&etx=Billedet er for stort eller af forkert filtype.&ovs="& server.urlEncode(Upload.Form("ovs")) &"&txt="& server.urlEncode(Upload.Form("txt")) &"&dato="& server.urlEncode(Upload.Form("dato"))&"&mindstepris="& server.urlEncode(Upload.Form("mindstepris"))&"&budforoegelse="& server.urlEncode(Upload.Form("budforoegelse"))&"&stand="& server.urlEncode(Upload.Form("stand"))&"&ip_log="& server.urlEncode(Upload.Form("ip_log"))&"&startpris="& server.urlEncode(Upload.Form("startpris"))&")") end if elseif response.redirect("opret_auktion.asp?menu=fodboldauktioner&action=oprettet") End If response.redirect("opret_auktion.asp?menu=fodboldauktioner&action=oprettet") -----------------------------------
Det er elseif'en til sidste. Det skal bare være else: ... else response.redirect("opret_auktion.asp?menu=fodboldauktioner&action=oprettet") End If response.redirect("opret_auktion.asp?menu=fodboldauktioner&action=oprettet")
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.