Flytta ut hela funktionen och lägg den innan all den andra koden.
Den skall defenitivt inte ligga där den ligger nu.
/red. Varför flyttade du på den om det fungerade?
4 svar · 217 visningar · startad av Mika3l
Håller på att pilla med ett administrationssystem där man ska kunna ladda upp filer (fem åt gången, file1, file2 osv). Slumpade siffror och bokstäver och ett _ ska läggas till före namnet.
Det fungerade först då jag lade function getRndNr före For each file In objUpload.Files men nu får jag följande felmeddelande:
Kompileringsfel i Microsoft VBScript (0x800A03EA)
Syntaxfel
/ufm/kp/files.asp, line 43
Function getRndNr(lowbound,uppbound)
Koden (rad 43 är blå):
Dim objUpload, intCountFiles
Set objUpload = Server.CreateObject("aspSmartUpload.SmartUpload")
objUpload.Upload
For each file In objUpload.Files
If not file.IsMissing Then
[blue]Function getRndNr(lowbound,uppbound)[/blue]
Randomize()
getRndNr = int( ( ( lowbound ) - ( uppbound + 1 ) ) * RND + ( uppbound + 1 ) )
End Function
Dim strRND
For i = 1 to 5
strRND = strRND & chr( getRndNr( 97, 122 ) )
Next
For i = 1 to 5
strRND = strRND & getRndNr( 1, 9 )
Next
file.SaveAs("/files/" & strRND & file.FileName)
' Response.Write("Name = " & file.Name & "<BR>")
' Response.Write("Size = " & file.Size & "<BR>")
' Response.Write("FileName = " & file.FileName & "<BR>")
' Response.Write("FileExt = " & file.FileExt & "<BR>")
' Response.Write("FilePathName = " & file.FilePathName & "<BR>")
' Response.Write("ContentType = " & file.ContentType & "<BR>")
' Response.Write("ContentDisp = " & file.ContentDisp & "<BR>")
' Response.Write("TypeMIME = " & file.TypeMIME & "<BR>")
' Response.Write("SubTypeMIME = " & file.SubTypeMIME & "<BR>")
'intCount = intCount + 1
End If
intCountFiles = intCountFiles+1
Next
Response.Write(intCountFiles & " fil(er) har laddats upp.")
Tacksam för svar!
Flytta ut hela funktionen och lägg den innan all den andra koden.
Den skall defenitivt inte ligga där den ligger nu.
/red. Varför flyttade du på den om det fungerade?
Du får inte ha en funktionsdefinition i en loop.
Flyttade på den för att den skulle köras på nytt (enligt min tanke som kan ha varit felaktig) då bokstäverna och siffrorna blev lika.
Får flytta tillbaka den!
Nu fungerar det helt perfekt! La till strRND = "" sist så att det blev en "nollställning".
Tack för hjälpen!