jorgis Skrevet 18. januar 2004 Del Skrevet 18. januar 2004 Holder på med et upload-skript. Skriptet fungerer fint, men laster opp på en ganske statisk måte, i og med at skriptet laster opp til en fast mappe. Jeg vil gjerne at det skal være slik at hvis filtypen er .jpg, .jpeg, .gif, .png o.l., skal målmappe være ./images, og ellers skal målmappe være ./filer. Hvordan skal jeg få dette til? Lenke til kommentar
???????? Skrevet 18. januar 2004 Del Skrevet 18. januar 2004 Ta en kikk på: http://no2.php.net/manual/en/features.file-upload.php der finner du funksjonen: $_FILES['userfile']['type'] Da kan du kjøre en IF på type, dersom den er noen av de filene skal den flyttes til den mappen, ellers skal filen til en annen mappe. Lenke til kommentar
jorgis Skrevet 18. januar 2004 Forfatter Del Skrevet 18. januar 2004 if ($_FILES["uploadfil"]["image/jpeg"]) { målmappe == "./images"; } else { målmappe == "./filer"; } Noe sånt? Hvis filen er .gif eller .png, da? Lenke til kommentar
???????? Skrevet 18. januar 2004 Del Skrevet 18. januar 2004 Det finner du lett ut ved å echo $_FILES['userfile']['type']; Last opp de filene du ønsker å vite typen til, så får du se hva typen heter. Tror de er som dette, men husker ikke i farten: image/gif image/png Lenke til kommentar
jorgis Skrevet 18. januar 2004 Forfatter Del Skrevet 18. januar 2004 Hvis jeg bruker koden sånn som den står i det forrige innlegget mitt, vil alle filer av typen .jpeg uploades til /images, mens .gif og .png-filer lastes opp til /filer. Jeg vil ha det slik at _både_ jpeg, gif, og png skal lastes opp til /images, mens resten (.txt, .html, .zip) skal lastes opp til /filer. Hvordan kan jeg ha flere verdier i ["type"]? Lenke til kommentar
???????? Skrevet 18. januar 2004 Del Skrevet 18. januar 2004 if ($_FILES['uploadfil']['type'] == "image/jpeg" OR $_FILES['uploadfil']['type'] == "image/gif" OR $_FILES['uploadfil']['type'] == "image/png") { last opp til bildemappen }else{ last opp til den andre mappen } du kan også lese inn bilde typene i en array og bruke in_array(). F.eks. $bilder = array("image/jpeg", "image/png", "image/gif"); if(in_array($_FILES['uploadfil']['type'], $bilder)){ Lenke til kommentar
jorgis Skrevet 18. januar 2004 Forfatter Del Skrevet 18. januar 2004 Takker. Skal teste det ut så snart webhost er online igjen. Lenke til kommentar
Torbjørn Skrevet 18. januar 2004 Del Skrevet 18. januar 2004 et alternativ kan være å sjekke for strengen "image/" i typen. if(strstr("image/",$_FILES['uploadfil']['type'])){ // work your magic } Lenke til kommentar
jorgis Skrevet 18. januar 2004 Forfatter Del Skrevet 18. januar 2004 Bruker dette her, etter råd fra ????????: if ($_FILES["uploadfil"]["type"] == "image/jpeg" OR $_FILES["uploadfil"]["type"] == "image/gif" OR $_FILES["uploadfil"]["type"] == "image/png") { $konfigurasjon["upload_bibliotek"] = "./images"; } else { $konfigurasjon["upload_bibliotek"] = "./filer"; } Problemet er bare at uansett filtype laster den opp til ./filer. Noen som vet hva jeg har gjort galt? Lenke til kommentar
Torbjørn Skrevet 18. januar 2004 Del Skrevet 18. januar 2004 sjekk hva filtypen heter. Lenke til kommentar
jorgis Skrevet 18. januar 2004 Forfatter Del Skrevet 18. januar 2004 Hva filtypen på filen jeg lastet opp heter? image/jpeg er filtype for .jpeg/.jpg. Selv om det er spesifisert laster den opp til ./filer Lenke til kommentar
Torbjørn Skrevet 18. januar 2004 Del Skrevet 18. januar 2004 da er det kanskje en annen del av skriptet som ikke funker? Lenke til kommentar
jorgis Skrevet 18. januar 2004 Forfatter Del Skrevet 18. januar 2004 da er det kanskje en annen del av skriptet som ikke funker? Skriptet fungerer helt fint ellers. Problemet er at den laster opp til feil mappe, hvilket den ikke skal ifølge den koden jeg viste litt over. Lenke til kommentar
Torbjørn Skrevet 18. januar 2004 Del Skrevet 18. januar 2004 vel skriv ut typen og sjekk at den virkelig er det du sjekker for da. det betyr ikke at det er feilfritt selvom det fungerer fint. bruker du f.eks $konfigurasjon["upload_bibliotek"] når du siden skal lagre fila? Lenke til kommentar
???????? Skrevet 18. januar 2004 Del Skrevet 18. januar 2004 Glem ikke at jpg kan også være av typen image/pjpeg Lenke til kommentar
jorgis Skrevet 18. januar 2004 Forfatter Del Skrevet 18. januar 2004 Glem ikke at jpg kan også være av typen image/pjpeg kjørte en echo av filtype, og så at nesten alle bilder jeg uploadet var av type image/pjpeg. Skal fikse på det, så tror jeg nok det fungerer. Lenke til kommentar
jorgis Skrevet 18. januar 2004 Forfatter Del Skrevet 18. januar 2004 Yup, nå fungerer det... Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå