18. maj 2003 - 18:08Der er
5 kommentarer og 1 løsning
Ænder FilNavn - Upload
Jeg har et lille problem på min hjemmeside... Bruger på min side kan oprette en profil med billeder af der deres bil. Men når de opretter en bil vælger de også via en form hvor på deres harddisk billedet ligger... Og her opstår problemmet... Hvis 2 personer kalder deres billede for det samme så overskriver den bare det ene billede på serveren... Og det må ikke ske... Så hvordan gør man sådan at når de uploader billedet skal den ændre filnavet til noget tilfældigt ? Her er koden på den side som uploader billedet og gemmer filnavnet i databasen:
<%
Dim upl, NewFileName
Set upl = Server.CreateObject("ASPSimpleUpload.Upload")
If Len(upl.Form("File1")) > 0 Then NewFileName = "/Images/Biler/" & upl.ExtractFileName(upl.Form("File1")) If upl.SaveToWeb("File1", NewFileName) Then Response.Write("Billede blev uploadet på server") Else Response.Write("Fejl! Billedet blev ikke uploadet !!! ") End If End If
I lang tid har samarbejdsbranchen fokuseret på at forbedre enhedsfunktioner – bedre kameraer, klarere lyd og smartere software. Men den virkelige forvandling handler ikke om funktioner.
Her er koden, den lavet et fil navn med op til 10 tilfældige tal:
<%
Dim upl, NewFileName, sti, index, extNavn, nytnavn
Set upl = Server.CreateObject("ASPSimpleUpload.Upload")
If Len(upl.Form("File1")) > 0 Then Set fso = Server.CreateObject("Scripting.FileSystemObject")
sti = "/Images/Biler/" NewFileName = upl.ExtractFileName(upl.Form("File1"))
index = InStrRev(NewFileName, ".") if index > 0 then extNavn = Mid(NewFileName,index+1)
randomize nytnavn = sti & CStr(Int(rnd*9999999999)+1) & "." & extNavn do while fso.FileExists(Server.MapPath(nytnavn)) randomize nytnavn = sti & CStr(Int(rnd*9999999999)+1) & "." & extNavn loop Set fso = nothing NewFileName = nytnavn
If upl.SaveToWeb("File1", NewFileName) Then Response.Write("Billede blev uploadet på server") Else Response.Write("Fejl! Billedet blev ikke uploadet !!! ") End If End If
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.