lobster Skrevet 8. mars 2006 Del Skrevet 8. mars 2006 Her er et scripts jeg fant pa php.net. Det fungerer flott hos meg (jeg endret pa det slik at det skulle vare ryddig nar jeg la det ut her, sa det kan vare det ikke virker lengre) Det jeg har problemer med er at jeg i mappen gallery ogsa har en info.html fil. Denne blir ogsa listet opp i dette scriptet. Jeg forstar ikke sa mye av hva de har gjort her: if (substr($file,0,1)!=".") Men jeg onsker a luke ut .html ogsa.. Er ikke sikker pa hvordan jeg skal forklare dette bedre.. og beklager at jeg ikke skriver med norske tegn. <?php $path = "gallery"; $dh = opendir($path); while (false !== ($file=readdir($dh))) { if (substr($file,0,1)!=".") { if (is_dir($path.$file)) $dirs[]=$file.'/'; else $files[]=$file; } } @closedir($dh); if ($files) natcasesort($files); if ($dirs) natcasesort($dirs); $files=array_merge($dirs,$files); foreach ($files as $file) echo "<img src=\"gallery/$file\"<br />"; ?> Lenke til kommentar
CruellaDeVille Skrevet 8. mars 2006 Del Skrevet 8. mars 2006 Her er et scripts jeg fant pa php.net.Det fungerer flott hos meg (jeg endret pa det slik at det skulle vare ryddig nar jeg la det ut her, sa det kan vare det ikke virker lengre) Det jeg har problemer med er at jeg i mappen gallery ogsa har en info.html fil. Denne blir ogsa listet opp i dette scriptet. Jeg forstar ikke sa mye av hva de har gjort her: if (substr($file,0,1)!=".") Men jeg onsker a luke ut .html ogsa.. Er ikke sikker pa hvordan jeg skal forklare dette bedre.. og beklager at jeg ikke skriver med norske tegn. <?php $path = "gallery"; $dh = opendir($path); while (false !== ($file=readdir($dh))) { if (substr($file,0,1)!="." || !eregi("\.html", $file) { if (is_dir($path.$file)) $dirs[]=$file.'/'; else $files[]=$file; } } @closedir($dh); if ($files) natcasesort($files); if ($dirs) natcasesort($dirs); $files=array_merge($dirs,$files); foreach ($files as $file) echo "<img src=\"gallery/$file\"<br />"; ?> 5723078[/snapback] if (substr($file,0,1)!=".") betyr: Vi leser directory (i readdir()), og trekker ut filnavnet. Hvis filnavnet har . (punktum) som første tegn, ikke list de ut. Dette er operativsystem skjulte filer og/eller en .htaccess-fil, som vi helst ikke vil at noen skal lese. Lenke til kommentar
luser32 Skrevet 9. mars 2006 Del Skrevet 9. mars 2006 derfor kan det være lurt å legge til både ".." som enkelt sagt betyr "opp ett nivå"(håper jeg) og info.html, slik at de ikke blir med i lista. Lenke til kommentar
lobster Skrevet 9. mars 2006 Forfatter Del Skrevet 9. mars 2006 derfor kan det være lurt å legge til både ".." som enkelt sagt betyr "opp ett nivå"(håper jeg) og info.html, slik at de ikke blir med i lista. 5727217[/snapback] Men hvordan gjør jeg dette? Lenke til kommentar
kakkle Skrevet 10. mars 2006 Del Skrevet 10. mars 2006 (endret) derfor kan det være lurt å legge til både ".." som enkelt sagt betyr "opp ett nivå"(håper jeg) og info.html, slik at de ikke blir med i lista. 5727217[/snapback] Trenger jo ikke legge til ".." Denne blir jo dekket ved at den starter med ".". Koden som CruellaDeVille postet, vil jo også sjekke om filnavnet inneholder ".html". Gjør den det, vil den ikke gå inn i if setningen. I tillegg, så sjekker den om filnavnet starter på "." En annen løsning, er å legge filene inn i array bare dersom det er godkjente fil endelser (f.eks .jpg, png, gif, osv...) Endret 10. mars 2006 av kakkle 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å