Avatar billede timmwillum Nybegynder
10. februar 2008 - 10:46 Der er 4 kommentarer og
1 løsning

Kontrol af filtype

Hej eksperter

Jeg oploader billeder via ASPupload og laver i den forbindelse en browserkontrol af filtypen (kombineret med en serverside kontrol). Den er lige nu sat til kun at acceptere jpg, men skal udvides til gif. Javascriptet ser sådan ud:

<script LANGUAGE="JavaScript">
function valider(myForm) {

    var reg = /\.jpe?g$/i;
    if (myForm.FILE1.value.length = 0) {
        alert ("Du skal angive et billede.");
        myForm.FILE1.focus();
        return false;
    }
    if (!myForm.FILE1.value.match(reg)) {
          alert ("Du skal angive et .jpg- eller .jpeg-billede.");
          myForm.reset();
          myForm.FILE1.focus();
        return false;
    }
    // ingen fejl, juhuu
    //window.open('loader.htm','MyWindow','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,width=200,height=100,left=1,top=1');
    alert('Hav tålmodighed ... det kan tage noget tid at oploade');
    document.getElementById("g").style.visibility="visible"; 
    return true
};
</script>

Da jeg ikke er helt hjemme i javascript har jeg brug for hjælp til udbygning af ovenstående. Jeg kan gennemskue at det er "var reg = /\.jpe?g$/i;" som skal udbygges til også at acceptere gif ... but how to?

Bonusspørgsmål: Lige nu accepterer den vel egentlig kun ".jpg", men hvad med ".jpeg"?
Avatar billede erikjacobsen Ekspert
10. februar 2008 - 10:53 #1
var reg = /\.(jpe?g|gif)$/i;

men la' nu vær' med at lade dette være det eneste check på extension. En middelmådig hacker kan sagtens upload en .php fil og overtage hele dit site. Du skal også checke på serversiden.
Avatar billede timmwillum Nybegynder
10. februar 2008 - 11:20 #2
Tak Erik

Serverside kontrollen er allerede etableret, så jeg føler mig relativt sikker. Derudover er ovenstående til et admin modul, hvor det i udgangspunktet kun bør være webmaster selv, som kan komme ind.

Du vil vel stadig ikke have points?
Avatar billede cpufan Juniormester
10. februar 2008 - 11:57 #3
Bonusspørgsmål: Lige nu accepterer den vel egentlig kun ".jpg", men hvad med ".jpeg"?

var reg = /\.(jpe?g|gif)$/i;

e?  betyder "måske" - kunne ikke lige finde et bedre ord -----
Avatar billede erikjacobsen Ekspert
10. februar 2008 - 12:27 #4
? er nemlig "måske", dvs 0 eller 1 forekomst af "dimsen" foran, her "e"

Ingen points, tak.
Avatar billede timmwillum Nybegynder
09. marts 2011 - 21:06 #5
Svar
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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