fa74b4a4-8b2c Skrevet 14. juni 2008 Del Skrevet 14. juni 2008 Jeg har brukt følgende kode for å få php til å liste opp alle filene som ligger i en mappe: <?php $count = 0; if ($handle = opendir('.')) { while (false !== ($file = readdir($handle))) { if ($file != "." && $file != "..") {$count++; print("<a href=\"".$file."\">".$file."</a><br />\n"); } } echo '<br /><br /><a href="..?id=3">Return</a>'; closedir($handle); } ?> Problemet er at jeg ikke ønsker å liste alle filtypene som ligger i mappen. Er det noe som kan hjelpe meg slik at det feks kun er .doc, .jpg, .xls og .pdf filer som vises? Tusen takk for all hjelp Lenke til kommentar
Peter Skrevet 14. juni 2008 Del Skrevet 14. juni 2008 (endret) http://www.php.net/glob Ellers kan du alltids $accepted_ext = array('pdf', 'xsl', 'doc'); $pos = strrpos($file, '.'); if(false !== $pos && $pos < strlen($file)-1) { $ext = substr($file, $pos+1); if(in_array($accepted_ext, $ext)) echo $file; } Endret 14. juni 2008 av Peter Lenke til kommentar
fa74b4a4-8b2c Skrevet 15. juni 2008 Forfatter Del Skrevet 15. juni 2008 (endret) Tusen takk for svar, jeg fikk ikke koden til å virke. Er det noe jeg gjør feil? Har søkt på nettet etter en kode som kun viser bestemte filtyper. Har så langt ikke funnet noe. Alle forslag mottaes med stor takk Endret 15. juni 2008 av J0nny Lenke til kommentar
Jonas Skrevet 15. juni 2008 Del Skrevet 15. juni 2008 (endret) Er det noe jeg gjør feil? Hvordan skal vi vite om du gjør noe feil, når vi ikke aner hva i all verden du gjør? Post koden du foreløpig har og GI OSS LITT INFORMASJON. Det skal samtidig sies at alt Peter's kode gjør er å sjekke filendelser. Dersom du limte den inn alene i et dokument vil du ikke få mye resultat. Endret 15. juni 2008 av Jonas Lenke til kommentar
fa74b4a4-8b2c Skrevet 15. juni 2008 Forfatter Del Skrevet 15. juni 2008 Beklager hvis jeg har gitt litt lite informasjon. Det jeg prøver på er å lage en kode som viser innholdet i en mappe, men som bare printer ut bestemte filtyper. Den koden jeg postet i min første post printer ut alle filtypene som ligger i mappen. Hvilke forandringer kan jeg feks gjøre i den koden jeg postet for å få det til å kun vise bestemte filtyper, og ikke alt som ligger i mappen? Lenke til kommentar
brgr Skrevet 15. juni 2008 Del Skrevet 15. juni 2008 Prøv denna koden $accepted_ext = array('pdf', 'xsl', 'doc'); $mappe = "./"; if(is_dir($mappe)) { if($dh==opendir($mappe)) { while(($fil=readdir($dh))!==false) { $pos = strrpos($fil, '.'); if(false !== $pos && $pos < strlen($fil)-1) { $ext = substr($fil, $pos+1); if(in_array($accepted_ext, $ext)) { echo $fil; }; }; }; }; }; Kan vel ganske så lite PHP, så kan vel si ganske sikkert att det er feil ved den.. Lenke til kommentar
Jonhoo Skrevet 16. juni 2008 Del Skrevet 16. juni 2008 Så glob ble nevnt her, og det er nok beste mulighet..: $mappe_med_filer = '/var/www/filer'; $filtyper = array('txt', 'pdf', 'doc'); $filer = array(); for ($i = 0; $i < count($filtyper); $i++) { array_merge($filer, glob($mappe_med_filer.'/*.'.$filtyper[$i]); } $filer inneholder da til slutt alle filer som passer med dine filtyper i mappen $mappe_med_filer =) Lenke til kommentar
fa74b4a4-8b2c Skrevet 16. juni 2008 Forfatter Del Skrevet 16. juni 2008 Tusen takk for mye god hjelp. Har nå klart å løse problemet mitt Lenke til kommentar
itsmebth Skrevet 16. juni 2008 Del Skrevet 16. juni 2008 (endret) Ser du har løst problemet, men det kan gjøres litt mere effektivt med glob('dir/*.(txt|pdf|doc)'); Utested Edit: Ser ikke ut som det virker... bare ignorer dette Endret 16. juni 2008 av itsmebth Lenke til kommentar
Jonhoo Skrevet 16. juni 2008 Del Skrevet 16. juni 2008 visste ikke at glob støttet "arrays" med filtyper :S Jaja, stilig.. Da er nok din løsning best =) Lenke til kommentar
avalandon Skrevet 16. juni 2008 Del Skrevet 16. juni 2008 visste ikke at glob støttet "arrays" med filtyper :S Jaja, stilig.. Da er nok din løsning best =) Det visste ikke jeg heller. array glob ( string $pattern [, int $flags ] ) Lenke til kommentar
Peter Skrevet 17. juni 2008 Del Skrevet 17. juni 2008 visste ikke at glob støttet "arrays" med filtyper :S Jaja, stilig.. Da er nok din løsning best =) Det visste ikke jeg heller. array glob ( string $pattern [, int $flags ] ) Er det bare jeg som ikke klarer å se noen som har brukt array i glob her? (Forbehold om at itsmebth har redigert posten sin) Lenke til kommentar
itsmebth Skrevet 17. juni 2008 Del Skrevet 17. juni 2008 visste ikke at glob støttet "arrays" med filtyper :S Jaja, stilig.. Da er nok din løsning best =) Det visste ikke jeg heller. array glob ( string $pattern [, int $flags ] ) Er det bare jeg som ikke klarer å se noen som har brukt array i glob her? (Forbehold om at itsmebth har redigert posten sin) Det var jeg som svarte uten å teste om det faktisk virket (som det ikke gjør). Jeg må ha blandet det sammen formatet som brukes for å angi filtyper i Windows Common Dialog (åpne, lagre, etc...) Lenke til kommentar
Jonhoo Skrevet 17. juni 2008 Del Skrevet 17. juni 2008 Er det bare jeg som ikke klarer å se noen som har brukt array i glob her? (Forbehold om at itsmebth har redigert posten sin) Var en grunn til at jeg skrev "array", ikke array.. (txt|pdf|doc) kan vel betegnes som en "array" med filtyper... 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å