solbulleMedlem sedan mars 20015 287 inlägg Du har outputfile.asp som innehåller kodraderna:
'Create FileSytemObject Component
Set ScriptObject = Server.CreateObject("Scripting.FileSystemObject")
'Create and Write to a File
pathEnd = Len(Server.mappath(Request.ServerVariables("PATH_INFO")))-14
' Set MyFile = ScriptObject.CreateTextFile(Left(Server.mappath(Request.ServerVariables("PATH_INFO")),pathEnd)&filename)
Set MyFile = ScriptObject.CreateTextFile(Server.mappath(filename))
For i = 1 to LenB(value)
MyFile.Write chr(AscB(MidB(value,i,1)))
Next
MyFile.Close
Skulle tro att det är den biten som skall omgärdas av din If-sats (som typ den högre upp på sidan.)
solbulleMedlem sedan mars 20015 287 inlägg crisse6Medlem sedan dec. 20002 526 inlägg fick ordning på strl så den måste hålla 50 kb, men jag får inte ordning på hur jag ska skriva för att kolla om filen som laddas ipp är en zip fil????
crisse6Medlem sedan dec. 20002 526 inlägg försöker föra in sökvägen till filen i en databas, men icke:
<%
Response.Expires=0
Response.Buffer = TRUE
Response.Clear
'Response.BinaryWrite(Request.BinaryRead(Request.TotalBytes))
byteCount = Request.TotalBytes
'Response.BinaryWrite(Request.BinaryRead(varByteCount))
RequestBin = Request.BinaryRead(byteCount)
Dim UploadRequest
Set UploadRequest = CreateObject("Scripting.Dictionary")
BuildUploadRequest RequestBin
'Exempel på hur man kan 'plocka ner' andra forumlärelement
'email = UploadRequest.Item("email").Item("Value")
contentType = UploadRequest.Item("blob").Item("ContentType")
filepathname = UploadRequest.Item("blob").Item("FileName")
filename = Right(filepathname,Len(filepathname)-InstrRev(filepathname,"\"))
value = UploadRequest.Item("blob").Item("Value")
'Create FileSytemObject Component
If byteCount<=50000 THEN
Set ScriptObject = Server.CreateObject("Scripting.FileSystemObject")
'Create and Write to a File
pathEnd = Len(Server.mappath(Request.ServerVariables("PATH_INFO")))-14
' Set MyFile = ScriptObject.CreateTextFile(Left(Server.mappath(Request.ServerVariables("PATH_INFO")),pathEnd)&filename)
Set MyFile = ScriptObject.CreateTextFile(Server.mappath(filename))
For i = 1 to LenB(value)
MyFile.Write chr(AscB(MidB(value,i,1)))
Next
MyFile.Close
response.write "<b>Filens sökväg:</b> " & Server.mappath(filename) & "<br>"
response.write "<b>Filnamn:</b> " & filename & "<br><br>"
response.write "<img src=""" & filename & """>"
Datum = Now
SQL = "INSERT INTO script_upload ([namn], [datum], [av], [typ], [filnamn]) VALUES('" & Request.Form("namn") & "',#"& Datum &"#,'crisse6','" & Request.form("typ") & "'," & filename & ")"
Databas.Execute(SQL)
else
response.write "Du har antingen en fil som inte har filändelse .jpg eller så är den större än 50 kb."
end if
%>
får felmess:
Request object error 'ASP 0207 : 80004005'
Cannot use Request.Form
/upload/outputfile.asp, line 54
Cannot use Request.Form collection after calling BinaryRead
fattar nada just nu!
solbulleMedlem sedan mars 20015 287 inlägg
'Exempel på hur man kan 'plocka ner' andra forumlärelement
'email = UploadRequest.Item("email").Item("Value")
mao kan du INTE som ditt felmess säger använda Request.Form collection...
Filtypen:
If contentType="image/pjpeg" THEN
testa att skriv zip istället, fungerar inte det, kör en response.write contenType när du laddar upp en zipfil så får du direkt reda på vad du ska skriva in.
:)
crisse6Medlem sedan dec. 20002 526 inlägg vad ska jag göra då då med mina forms???
solbulleMedlem sedan mars 20015 287 inlägg Du gör som i exemplet jag citerade från din fil!
namn= UploadRequest.Item("namn").Item("Value")
Placeras i koden där Exemplet är placerat!
Gör likadant med andra fält du egentligen skulle använt request.form på.
Sen din sqlsats:
SQL = "INSERT INTO script_upload ([namn], [datum], [av], [typ], [filnamn]) VALUES('" & namn & "',#"& Datum &"#,'crisse6','" & Request.form("typ") & "'," & filename & ")"
crisse6Medlem sedan dec. 20002 526 inlägg Microsoft VBScript runtime error '800a01a8'
Object required: '[undefined]'
/upload/outputfile.asp, line 52
möts jag med efter denna kod...
namn= UploadRequest.Item("namn").Item("Value")
typ= UploadRequest.Item("typ").Item("Value")
Datum = Now
SQL = "INSERT INTO script_upload ([namn], [datum], [av], [typ], [filnamn]) VALUES('" & namn & "',#"& Datum &"#,'crisse6','" & typ & "'," & filename & ")"
Databas.Execute(SQL)
else
response.write "Du har antingen en fil som inte har filändelse .jpg eller så är den större än 50 kb."
end if
crisse6Medlem sedan dec. 20002 526 inlägg gött hejdå, önskar att man kunde få hjälp, istället för att inte få det
OveRRidEMedlem sedan feb. 200112 078 inlägg Nu skall vi inte sura ner oss här. :)
Hur ser din SQL-sats ut?
response.write SQL
solbulleMedlem sedan mars 20015 287 inlägg Det jag menar är att du måste placera:
namn= UploadRequest.Item("namn").Item("Value")
typ= UploadRequest.Item("typ").Item("Value")
typ på den plats som de liknande raderna är placerade på i exemplet, INNAN du kör:
MyFile.Close
som jag tycker det förefaller som om du gjort.
Placeras i koden där Exemplet är placerat!
Var väl en ganska bra hjälp tycker jag no.
För övrigt får jag väl be om ursäkt för att man försöker hjälpa till :(
crisse6Medlem sedan dec. 20002 526 inlägg solbulle, jag menar inte att din hjälp är inte är till ngn nytta, utan tycker bara att du borde förklara lite bättre ;)
Jag får inte ordning på det hela, om någon vill så får dom gärna lägga in kod snuttarna där dom ska vara i min kod, min kod finns i tidigare inlägg.
tack.
solbulleMedlem sedan mars 20015 287 inlägg <%
Response.Expires=0
Response.Buffer = TRUE
Response.Clear
'Response.BinaryWrite(Request.BinaryRead(Request.TotalBytes))
byteCount = Request.TotalBytes
'Response.BinaryWrite(Request.BinaryRead(varByteCount))
RequestBin = Request.BinaryRead(byteCount)
Dim UploadRequest
Set UploadRequest = CreateObject("Scripting.Dictionary")
BuildUploadRequest RequestBin
'Exempel på hur man kan 'plocka ner' andra forumlärelement
'email = UploadRequest.Item("email").Item("Value")
[b]
namn= UploadRequest.Item("namn").Item("Value")
typ= UploadRequest.Item("typ").Item("Value")[/b]
contentType = UploadRequest.Item("blob").Item("ContentType")
filepathname = UploadRequest.Item("blob").Item("FileName")
filename = Right(filepathname,Len(filepathname)-InstrRev(filepathname,"\"))
value = UploadRequest.Item("blob").Item("Value")
'Create FileSytemObject Component
If byteCount<=50000 THEN
Set ScriptObject = Server.CreateObject("Scripting.FileSystemObject")
'Create and Write to a File
pathEnd = Len(Server.mappath(Request.ServerVariables("PATH_INFO")))-14
' Set MyFile = ScriptObject.CreateTextFile(Left(Server.mappath(Request.ServerVariables("PATH_INFO")),pathEnd)&filename)
Set MyFile = ScriptObject.CreateTextFile(Server.mappath(filename))
For i = 1 to LenB(value)
MyFile.Write chr(AscB(MidB(value,i,1)))
Next
MyFile.Close
response.write "<b>Filens sökväg:</b> " & Server.mappath(filename) & "<br>"
response.write "<b>Filnamn:</b> " & filename & "<br><br>"
response.write "<img src=""" & filename & """>"
Datum = Now
SQL = "INSERT INTO script_upload ([namn], [datum], [av], [typ], [filnamn]) VALUES('" & namn & "',#"& Datum &"#,'crisse6','" & typ & "'," & filename & ")"
Databas.Execute(SQL)
else
response.write "Du har antingen en fil som inte har filändelse .jpg eller så är den större än 50 kb."
end if
%>
Notera dock att denna kod saknar väl iofs den del med filkollen som du lagt till, men där det är fet text tror jag du ska placera dina requests.
Måste bara få säga att detta skript rockar FETT! Grymt bra jobbat :-). Nu slipper jag köra ASPUpload som Telia har på sin webb tjänst. Tack!
sin_adecMedlem sedan apr. 2002272 inlägg Flera upload
men vad ska man ändra om man vill göra flera upload samtidigt...
crisse6Medlem sedan dec. 20002 526 inlägg Microsoft VBScript runtime error '800a01a8'
Object required: '[undefined]'
/upload/outputfile.asp, line 28
rad 28,
namn= UploadRequest.Item("namn").Item("Value")
solbulleMedlem sedan mars 20015 287 inlägg Du måste ha ett fält i ditt formulär med namnet: namn
crisse6Medlem sedan dec. 20002 526 inlägg hmm.... har fått den att lagra info i db.n, men nu när jag ska checka om fälten har värde så verkar det bli fel?! eller så är det något annat som strular... kolla koden:
<%
Response.Expires=0
Response.Buffer = TRUE
Response.Clear
'Response.BinaryWrite(Request.BinaryRead(Request.TotalBytes))
byteCount = Request.TotalBytes
'Response.BinaryWrite(Request.BinaryRead(varByteCount))
RequestBin = Request.BinaryRead(byteCount)
Dim UploadRequest
Set UploadRequest = CreateObject("Scripting.Dictionary")
BuildUploadRequest RequestBin
'Exempel på hur man kan 'plocka ner' andra forumlärelement
'email = UploadRequest.Item("email").Item("Value")
namn= UploadRequest.Item("namn").Item("Value")
typ= UploadRequest.Item("typ").Item("Value")
contentType = UploadRequest.Item("blob").Item("ContentType")
filepathname = UploadRequest.Item("blob").Item("FileName")
filename = Right(filepathname,Len(filepathname)-InstrRev(filepathname,"\"))
value = UploadRequest.Item("blob").Item("Value")
If "& namn &" = "" OR "& typ &" = "" then
response.write "Du måste välja en fil, skriva ett namn och välja typ av programmeringsspråk!"
end if
'Create FileSytemObject Component
If byteCount<=50000 THEN
Set ScriptObject = Server.CreateObject("Scripting.FileSystemObject")
'Create and Write to a File
pathEnd = Len(Server.mappath(Request.ServerVariables("PATH_INFO")))-14
' Set MyFile = ScriptObject.CreateTextFile(Left(Server.mappath(Request.ServerVariables("PATH_INFO")),pathEnd)&filename)
Set MyFile = ScriptObject.CreateTextFile(Server.mappath(filename))
For i = 1 to LenB(value)
MyFile.Write chr(AscB(MidB(value,i,1)))
Next
MyFile.Close
response.write "<font face=Verdana size=1>Din fil är upladdad utan problem!<br><br></font>"
response.write "<font face=Verdana size=1><a href=javascript:window.close()>Stäng</a></font>"
Datum = Now
SQL = "INSERT INTO script_upload ([namn], [datum], [av], [typ], [filnamn]) VALUES('" & namn & "',#"& Datum &"#,'" & session("anvandarnamn") & "','" & typ & "','" & filename & "')"
Databas.Execute(SQL)
else
response.write "Du har antingen en fil som inte har filändelse .jpg eller så är den större än 50 kb."
end if
%>
fel:
Server.MapPath() error 'ASP 0171 : 80004005'
Missing Path
/upload/outputfile.asp, line 47
The Path parameter must be specified for the MapPath method
47:
Set MyFile = ScriptObject.CreateTextFile(Server.mappath(filename))