26. juni 2005 - 15:57Der er
11 kommentarer og 1 løsning
problem med AspSmartUpload i IE
Jeg synes ellers at jeg har rimelig godt tjek på aspsmartupload Men det her har jeg nok stirret mig blind på Jeg forstår intet af hvorfor neden stående virker i FF men ikke i IE ----- <% Dim mySmartUpload, file, fso sti = "minsti" strSQL = "Select * From tabel Where Navn = '"&request.querystring("navn")&"'" Set rs = conn.execute(strSQL) Set fso = CreateObject("Scripting.FileSystemObject") if (fso.FileExists(sti&"\"&rs("Billede"))) Then fso.DeleteFile(sti&"\"&rs("Billede")) end if Set mySmartUpload = Server.CreateObject("aspSmartUpload.SmartUpload") mySmartUpload.AllowedFilesList = "jpg,jpeg,bmp,gif" mySmartUpload.Upload For each file In mySmartUpload.Files If not file.IsMissing Then file.SaveAs(sti&"\"&file.FileName) strSQL = "Update ledere Set Billede = '"&file.FileName&"' Where Navn = '"&request.querystring("navn")&"'" conn.execute(strSQL) End If Next %> --- Der er styr på db forbindelsen. Scriptet gør det at der til en given bruger kan uploades et profil billede. Hvis der i forvejen eksisterer et så slettes dette via FSO. I db gemmes kun oplysninger om billedes navn dvs "billedenavn.jpg". Så stien er absolut og ok. Anyway. I Firefox virker det fint. Hvis der er et billedenavn i db så slettes det fra serveren, der oprettes et nyt fra formen, og der indsættes det nye billedes navn i db. I Internet Explorer går det sådan at den også sletter billedet hvis der allerede eksisterer et. Men efter "mySmartUpload.Upload" så stopper den. Den går ikke ind i For løkken Er der nogen som ved hvorfor katten den ikke gør det?
oki - det er også for wierd i mit hoved. Jeg har prøvet lave en response.write "1" , "2" osv for hver eneste linje og i min IE der stopper den lige før løkken I FF, no probs - for wierd for mig :o( og irriterende
Det eneste der ikke er serverside ved det som jeg tror det måske er, skulle være at IE ikke opfanger formen og at der derfor ikke er nogle Files i den, så den skipper løkken Men det er mig en gåde hvorfor
jeg har nu forsøgt sætte en mySmartUpload.Files.Count på inden for løkken Den siger i FF at der er 1 fil, mens den i IE siger at der er 0 Det er wierd for jeg har brugt det et utal af gange før Formen er sådan her ---- <form method="post" action="upload.asp?navn=<%=navn%>" enctype="multipart/form-data"> <input type="file" name"FILE1" size="50"><br> <input type="submit" value="Upload billede" name="upload"> </form> ---- Eneste forskel fra andre gange hvor jeg har gjort det er at jeg kun ønsker at uploade eet billede. Men derfor troede jeg da godt man kunne lave en for løkke, som så kun kørte een gang :o/
1) Hvis der er fejl i visse browsere, og ikke andre, kan der (kun) være tale om HTML/JavaScript fejl, da det er klientsitde-fejl.. ASP afvikles på serversiden (browser-uafhængigt)..
2) Bruge aldrig bruger-afgivne værdier direkte! Jeg henviser til request.querystring("navn"). Oplysningerne, som brugeren afgiver eller kan hentes fra urlen, SKAL altid valideres! Specielt ved login (men også generelt).. Ellers kan det gå grueligt galt.. Det kan bruges til SQL Injection..
thesufer >> Det var da lige netop det ene "=" der gjorde forskellen. og ja så synes jeg altså det er "wierd" hehe, at det ikke betyder noget i FF. Men pyt skidt Alt det med sql injection osv - dont worry er der styr på :o) , dvs i mine test faser gider jeg ikke putte alle de ekstra funktioner på som tester for al verdens gejl, de kommer på når det overordnet virker :o)
ja ja, virker præcis som det skal, havde bare stirret mig blind på det For sad ellers og rettede name osv til for at være sikker, bare lige pånær det ene dumme tegn ;o)... tyyyyypisk hehe
nå jamen ok så - det skal vi jo ikke slås om Kan vel passende bruge dem til et par nye briller så haha ;o)
Synes godt om
Ny brugerNybegynder
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.