Uploadscript utan komponent

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • sin_adec
    Medlem
    • 2002-04-01
    • 277

    #46
    tänk om

    tänk om medlemmarna laddar upp bilder i samma mapp och råkar ha samma namn...

    är det ngn som vet en funktion som ändrar namnen på bilderna....

    Comment

    • Toonster
      Medlem
      • 2000-02-14
      • 1546

      #47
      Enklast är att skapa ett unikt filnamn med hjälp av en slumpgenerator, eller använd datum-klockckslag

      /T
      Jensen Ambassadör, mitt bästa köp! www.jensen.no

      Comment

      • sin_adec
        Medlem
        • 2002-04-01
        • 277

        #48
        skulle du kunna förklara närmare...

        Comment

        • OveRRidE
          Medlem
          • 2001-02-05
          • 8509

          #49
          Läs om exakt samma problem här: http://www.webforum.nu/showthread.php?s=&threadid=48011
          http://truemaybefalse.blogspot.com - Med en debugger i högsta hugg

          Comment

          • crisse6
            Medlem
            • 2000-12-10
            • 2441

            #50
            om man använder datum/klockslag så kan det ju ändå bli samma om sidan är en populär sådan
            yes

            Comment

            • Toonster
              Medlem
              • 2000-02-14
              • 1546

              #51
              Nej, inte om man har med sekunder.

              /T
              Jensen Ambassadör, mitt bästa köp! www.jensen.no

              Comment

              • Pellefant
                Medlem
                • 2002-05-20
                • 2614

                #52
                Hej!

                Det var ett toppenscript.

                En fråga, på defaultsidan, står det bläddra på knappen, var kan man ändra det till "Browse" ? (Har letat igenom de tre filerna, men den verkar inte satt till "Bläddra" någonstans, eller är det någon grundinställning, så att de med engelska Windows ser "Browse" automatiskt?

                Tacksam för hjälp.

                P.s Att ge olika namn på filerna, så att de inte radera varandra om olika användare laddar upp, kommer jag att göra idag, förmodligen år-månad-datum-timme-minut-sekund-filnamn, tex 20021108135223filnamn.txt , eller något slumpat namn. Jag postar koden här sedan om någon är intresserad.

                Comment

                • OveRRidE
                  Medlem
                  • 2001-02-05
                  • 8509

                  #53
                  [citat]En fråga, på defaultsidan, står det bläddra på knappen, var kan man ändra det till "Browse" ? (Har letat igenom de tre filerna, men den verkar inte satt till "Bläddra" någonstans, eller är det någon grundinställning, så att de med engelska Windows ser "Browse" automatiskt? [/citat]Det är en grundinställning. Texten på knappen varierar beroende på vilket språk du har.

                  Skriver du <input type="file"> blir det automatiskt en ruta och en knapp, så den kan du inte påverka.
                  http://truemaybefalse.blogspot.com - Med en debugger i högsta hugg

                  Comment

                  • crisse6
                    Medlem
                    • 2000-12-10
                    • 2441

                    #54
                    Du Override, har lite problem nu osa, konstigt nog. Filerna funkade utmarkt osa nar dom lag i en annan mapp (upload).. men det var bara for testkorning (vill inte blanda fardigt med icke fardigt), men nar jag flyttade och forsokte ladda upp sa far jag detta felmess:
                    [kod]
                    Microsoft VBScript runtime error '800a0005'

                    Invalid procedure call or argument: 'MidB'

                    /forum/upload.asp, line 6
                    [/kod]

                    line 6 ar;
                    [kod]
                    boundary = MidB(RequestBin,PosBeg,PosEnd-PosBeg)
                    [/kod]

                    Varfor?
                    yes

                    Comment

                    • crisse6
                      Medlem
                      • 2000-12-10
                      • 2441

                      #55
                      sa har ser min outputfile.asp fil ut (Response.Buffer = True ligger over):

                      [kod]
                      <%
                      Randomize
                      Response.Expires=0
                      Response.Clear

                      RequestBin = Request.BinaryRead(byteCount)
                      Dim UploadRequest
                      Set UploadRequest = CreateObject("Scripting.Dictionary")

                      BuildUploadRequest RequestBin

                      'Lite olika variabler

                      'Deklarerar variablen strMaxSize till 50000 bytes = 50 kb
                      strMaxSize = Request.TotalBytes

                      'strUsr är sessionsIDt
                      strUsr = "_"&session("sessionsID")

                      'strRandom skapar ett slumpat nummer
                      strRandom = CiNT(1-9000 * Rnd + 9000)

                      'strDt plockar ner datum
                      strDt = DatePart("m", Now())&"_"&_
                      DatePart("d", Now())&"_"&_
                      DatePart("yyyy", Now())

                      'strFile deklareras till formularfältet på default.asp
                      strFile = UploadRequest.Item("blob").Item("ContentType")

                      'I detta fall har vi bara .gif vi behöver oroa oss för och tar bara de 3 tecken från höger
                      strForm = Right(strFile,3)

                      'strAll kopplar ihop allting
                      strAll = strRandom&strDt&strUsr&"."&strForm


                      filename = Right(strAll,Len(strAll)-InstrRev(strAll,"\"))
                      value = UploadRequest.Item("blob").Item("Value")

                      'Skapar objekt
                      Set ScriptObject = Server.CreateObject("Scripting.FileSystemObject")

                      'Kollar om det är jpg eller gif fil om det stämmer, gå vidare
                      If strFile="image/pjpeg" OR strFile="image/gif" THEN

                      'Kollar nu med strMaxSize om den är större än 50kb, om inte, gå vidare
                      If strMaxSize > 50000 then
                      response.write "Bilden är för stor, "& strMaxSize &" bytes. Den får max vara 50000 bytes (50kb)."
                      else

                      'Skapa och skriv fil
                      pathEnd = Len(Server.mappath(Request.ServerVariables("PATH_INFO")))-14
                      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 & """>"

                      strSqlAddPic = "Update t_users set avatar = '"& filename &"' Where ID = "& session("sessionsID")
                      objConn.execute strSqlAddPic,,128

                      End IF
                      'Från If-satsen ovan så kommer här om det INTE är jpg eller gif fil
                      Else
                      response.write "Bilden måste vara av formatet .gif eller jpg."
                      End IF
                      %>
                      [/kod]
                      yes

                      Comment

                      • solbulle
                        Medlem
                        • 2001-03-12
                        • 4998

                        #56
                        Var inkluderar du upload.asp?
                        /solbulle
                        Hemmabio | Spelautomater | The Who

                        Comment

                        • solbulle
                          Medlem
                          • 2001-03-12
                          • 4998

                          #57
                          Sen verkar lite kod ramlat bort...
                          [kod]
                          <%
                          Response.Buffer = TRUE
                          Randomize
                          Response.Expires=0
                          Response.Clear
                          byteCount = Request.TotalBytes
                          RequestBin = Request.BinaryRead(byteCount)
                          Dim UploadRequest
                          Set UploadRequest = CreateObject("Scripting.Dictionary")

                          BuildUploadRequest RequestBin
                          [/kod]
                          /solbulle
                          Hemmabio | Spelautomater | The Who

                          Comment

                          • crisse6
                            Medlem
                            • 2000-12-10
                            • 2441

                            #58
                            Japp, funkar nu... Men nu vill jag gora sa att om det finns en bild i faltet ("avatar") sa ska den nya uppladdningen ersatta den gamla bilden genom att anvanda samma namn som den befintliga bilden. Det funkar. Men nu om det ar tomt i db:n sa blir det nu "Permission Denied" pa den kod jag kor... sa har ser det ut...
                            [kod]
                            If objRS.eof then
                            strAll = strRandom&strDt&strUsr&"."&strForm
                            filename = Right(strAll,Len(strAll)-InstrRev(strAll,"\"))
                            else
                            strAll = objRS("avatar")
                            filename = objRS("avatar")
                            End IF
                            [/kod]
                            yes

                            Comment

                            • Jesper T
                              Medlem
                              • 2001-11-15
                              • 7058

                              #59
                              Har du rätt sökväg till katalogen då?
                              Vänligen Jesper
                              Etisk kommunikation

                              Comment

                              • solbulle
                                Medlem
                                • 2001-03-12
                                • 4998

                                #60
                                Å på vilken rad fårdu felmeddelandet, de du visar?
                                /solbulle
                                Hemmabio | Spelautomater | The Who

                                Comment

                                Working...