Avatar billede moejensen Nybegynder
28. marts 2004 - 13:54 Der er 2 kommentarer og
1 løsning

Hjælp til AspSmartUpload

Jeg have næsten det samme spg i går, og jeg troede at jeg fik det til at virke, men nej :-(

Så her kommer det lige igen.

Jeg har nu følgende problemer:

Den hævder at der mangler en End if i sidste linie, men jeg vil ikke mene at jeg er enig.

I følge aspSmart.com, så kan man sikre sig mod at en fil bliver uploadet hvis den er for stor, hvis man bruger følgende linje:

If CLng(Request.ServerVariables("CONTENT_LENGTH")) < CLng(MaxFileSize) Then

men det ser ud til at den uploader filen alligevel.

Jeg håber der er nogen der kan hjælpe mig med at gennemskue koden :-)

*************************** kode start ***********************

<%
    If session("UID") = "" Then response.redirect("/Admin")
    bolUpload = request("Upload")
    If bolUpload = "" Then bolUpload = true

    'Tjekker om formen er submittet
    bolWasPosted = Request.ServerVariables("HTTP_METHOD") = "POST"
%>
    <!--#include virtual="/includes/db.asp"-->
    <!--#include virtual="/Admin/includes/stringGenerator.asp"-->

<!-- Insert New Picture Folder -->
<%
    'Uploader og resizer et nyt billede
    If bolWasPosted Then
        'Max billede størrelse i bytes
        Const MaxFileSize = 512000 '500 KB
        If CLng(Request.ServerVariables("CONTENT_LENGTH")) < CLng(MaxFileSize) Then
            Set Upload = Server.CreateObject("AspSmartUpload.SmartUpload")
            If Right(Upload.Files("file").FileName,3) = "jpg" OR Right(Upload.Files("file").FileName,4) = "jpeg" OR Right(Upload.Files("file").FileName,3) = "png" OR Right(Upload.Files("file").FileName,3) = "gif" Then
                Upload.Upload
                If Not Upload.Files("file").IsMissing Then   
                    strFilename = strGenerator()
                    strFilename = strFilename &"_"& Upload.Files("file").FileName
                    Upload.Files("file").SaveAs Server.MapPath("/images/Pictures/" & strFilename)
                    If Err = 0 Then
                        'Resizer picture
                        Set Image = Server.CreateObject("AspImage.Image")
                        Image.LoadImage Server.MapPath("/images/Pictures/" & strFilename)
                        intWidth = Upload.Form("picWidth")
                        If intWidth > 500 Then intWidth = 400
                        If Image.MaxX > intWidth Then
                            If(Image.MaxX > Image.MaxY) Then
                            intRatio = ((intWidth * 100) / Image.MaxX)
                            intNewY = CInt(Image.MaxY * (intRatio / 100))
                            Image.ResizeR intWidth, intNewY
                            Image.ImageFormat = 1           
                        Else
                            intRatio = ((intWidth * 100) / Image.MaxY)
                            intNewX = CInt(Image.MaxX * (intRatio / 100))
                            Image.ResizeR intNewX, intWidth
                            Image.ImageFormat = 1
                        End if
                       
                        Image.FileName = Server.MapPath("/images/Pictures/" & strFilename)
                        Image.SaveImage
                       
                        Image.LoadImage Server.MapPath("/images/Pictures/" & strFilename)
                        intRatio = ((40 * 100) / Image.MaxX)
                        intNewY = CInt(Image.MaxY * (intRatio / 100))
                        Image.ResizeR 40, intNewY
                        Image.ImageFormat = 1
                        Image.FileName = Server.MapPath("/images/Pictures/thumbnails/" & strFilename)
                        Image.SaveImage
                       
                        strAlign = Upload.Form("iAlign")
                        Conn.Execute("INSERT INTO Pictures (Name,FileName,WebShow,FolderId,Alignment,Alt) VALUES ('"& Upload.Form("Name") &"', '"& strFilename &"', "& Upload.Form("show") &", "& Upload.Form("Category") &", '"& striAlign &"','"& Upload.Form("Alt") &"');")
                       
                        Set Image = Nothing   
                        Set Upload = Nothing
                    Else
                        intErrorCode = 30
                    End If
                Else
                    intErrorCode = 40
                End if
            Else           
                intErrorCode = 20
            End if
        Else
            intErrorCode = 21
        End If
       
        If intErrorCode = 0 Then
            'Hvis alt går godt
            response.redirect("test.asp")
        End if
    End If
%>
<%If request("newFolder") = "yes" Then %>
    <!--#include virtual="/Admin/includes/newPictureFolder_inc.asp"-->
<!-- Insert New Picture -->
<%Else%>
    <html>
    <head>
        <title>Indsæt billede</title>
      <link rel="stylesheet" type="text/css" href="/Admin/css/Styles.css">
        <script type="text/javascript">
          function selOn(ctrl)  {ctrl.style.borderColor = '#000000';ctrl.style.backgroundColor = '#B5BED6';ctrl.style.cursor = 'hand';}
        function selOff(ctrl)  {ctrl.style.borderColor = '#D6D3CE';ctrl.style.backgroundColor = '#FFFFFF';}
        function selDown(ctrl) {ctrl.style.backgroundColor = '#8492B5';}
        function selUp(ctrl)  {ctrl.style.backgroundColor = '#B5BED6';}
       
            var msg  = "Sender fil ";
            var dots = new Array()
                dots[0] = "&#149;"
                dots[1] = "&#149;&#149;"
                dots[2] = "&#149;&#149;&#149;"
                dots[3] = "&#149;&#149;&#149;&#149;"
                dots[4] = "&#149;&#149;&#149;&#149;&#149;"
                dots[5] = "&#149;&#149;&#149;&#149;&#149;&#149;"
            var i    = 0;
           
            function ProgressCycle(){
                if(i<5){i=i+1}else{i=0}
                progress.innerHTML = dots[i];
            }
                function RunProgress(){
                setInterval('ProgressCycle()',600)
            }
           
            function changePicture(img_name,img_src)
            {
                document[img_name].src=img_src;
            }
      </script>
    </head>
    <body>
    <table border=0 width=100% height=100%>
    <tr>
      <td align=left valign=top>
          <h1>Indsæt billede</h1>
            <input type="radio" onClick="window.location='chooseExcistingPicture.asp'">&nbsp;&nbsp; Indsæt eksisterende billede<br>
            <input type="radio" checked onClick="window.location='uploadNewPicture.asp'">&nbsp;&nbsp; Upload nyt billede
            <h2>Upload nyt billede</h2>
            <center>
                <form name="UploadForm" method="POST" enctype="multipart/form-data" action="uploadNewPicture.asp">
                <table border="0" width="450">
                <tr>
                    <td width="150">Billede folder:</td>
                    <td width="300">
                        <select size="1" name="Category" style="width:143px;">
                            <option selected>Billede mappe</option>
                            <%
                                Set Rs = Conn.Execute("SELECT * FROM PictureFolder;")
                                Do while not rs.eof
                                    Response.write("<option value="""& Rs("id") &""">"& Rs("FolderName") &"</option>")
                                Rs.movenext
                                loop
                            %>
                        </select>&nbsp;&nbsp;<a href="uploadNewPicture.asp?newFolder=yes">Opret ny billedemappe</a>
                    </td>
                </tr>
                <tr>
                    <td width="150">Navn (ikke filnavn):</td>
                    <td width="300"><input type="text" name="Name" size="20"></td>
                </tr>
                <tr>
                    <td width="150">Justering:</td>
                    <td width="300" valign="middle">
                        <img alt="Venstre" align="top" class="butClass" src="/Admin/images/editorButtons/imageLeft.gif"  onMouseOver="selOn(this)" onMouseOut="selOff(this)" onMouseDown="selDown(this)" onMouseUp="selUp(this)" onClick="java script:document.UploadForm.iAlign.value='Left'">
                        <img alt="Ingen justering" align="top" class="butClass" src="/Admin/images/editorButtons/imageNoJust.gif" onMouseOver="selOn(this)" onMouseOut="selOff(this)" onMouseDown="selDown(this)" onMouseUp="selUp(this)" onClick="java script:document.UploadForm.iAlign.value=''">
                        <img alt="Højre" align="top" class="butClass" src="/Admin/images/editorButtons/imageRight.gif"  onMouseOver="selOn(this)" onMouseOut="selOff(this)" onMouseDown="selDown(this)" onMouseUp="selUp(this)" onClick="java script:document.UploadForm.iAlign.value='Right'">
                        <input type=text name=iAlign value="" readonly style="height: 23px; width:59px;">
                    </td>
                </tr>
                <tr>
                    <td width="150">Alt tekst:</td>
                    <td width="300"><input type="text" name="Alt" size="20"></td>
                </tr>
                <tr>
                    <td width="150">Vis i billedegalleri:</td>
                    <td width="300">
                        <select size="1" name="show">
                            <option selected value="YES">Ja</option>
                            <option value="NO">Nej</option>
                        </select>
                    </td>
                </tr>
                <tr>
                    <td width="150">Ønsket bredde<br />(max 500px):</td>
                    <td width="300"><input type="text" size="20" name="picWidth"><i>px</i></td>
                </tr>
                <tr>
                    <td width="150">Fil:</td>
                    <td width="300"><input type="file" size="20" name="file"></td>
                </tr>
                </table>
                </form>
                <p><a href="java script:RunProgress();;document.UploadForm.submit()">Indsæt</a></p>
                <span id=progress>Udfyld felterne, vælg et billede og tryk på send</span>
            </center>
            <%
                'Udskriver fejl fra upload metoden
                If intErrorCode > 0 Then
                    Select Case intErrorCode
                        Case 20: Response.Write "<script type=""text/javascript"">progress.innerHTML = '<font color=red>Forkert filtype! Der kan kun uploades JPG (*.jpg; *.jpeg) og  PNG (*.png) filer!</font>';</script>"
                        Case 21: Response.Write "<script type=""text/javascript"">progress.innerHTML = '<font color=red>Billedet fylder for meget! Max størrelse er: " & (MaxFileSize \ 1024) & " KB</font>';</script>"
                        Case 30: Response.Write "<script type=""text/javascript"">progress.innerHTML = '<font color=red>Der opstod en fejl under upload af dit billede og din profil er derfor ikke blevet oprettet. Dette skyldes højst sandsynligt en systemfejl!</font>';</script>"
                        Case 40: Response.Write "<script type=""text/javascript"">progress.innerHTML = '<font color=red>Du skal vælge en fil!</font>';</script>"
                    End Select
                End If
            %>
            </td>
            <td width="35"  style="border-left: 1px dotted AFAFAF;">&nbsp;</td>
            <td width=150 align=top valign=middle>
                <fieldset>
                    <legend>Indsæt billede</legend>
                    Du kan vælge om du vil indsætte et eksisterende billede eller uploade et nyt billede
                </fieldset>
                <br />
                <fieldset>
                    <legend>Værd at vide</legend>
                  Billedet vil autiomatisk blive minimeret så det er 200px i bredden.
                </fieldset>
              <br /><br/ >
              <p align=center><a href=java script:window.close(); id=ctrls3>Luk vindue</a><br /></p>
          </td>
        </tr>
        </table>
        </body>
        </html>
<%End if%>
<%
    Conn.Close
    Set Conn = Nothing
    Set Rs = Nothing
%>

***************************** Kode Slut ************************
Avatar billede moejensen Nybegynder
28. marts 2004 - 14:34 #1
Det skal nok lige sides, at ovenstående kode er hele koden fra filen: uploadNewPicture.asp
Avatar billede moejensen Nybegynder
28. marts 2004 - 18:28 #2
ingen bud??
Avatar billede moejensen Nybegynder
29. marts 2004 - 11:30 #3
Fik selv løst problemet :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester