Gilbert Skrevet 2. oktober 2003 Skrevet 2. oktober 2003 Har en mappe, "mappe" hvor det ligger tre filer: 1_28.02.03_Fil:1.php 2_29.05.03_Fil:2.php 3_01.06.03_Fil:3.php Greia er at den skulle gjerne samles i en slags meny, sortert etter nummeret først i filnavnet: <a href="mappe/1_28.02.03_Fil:1.php">Fil 1</a> (28.02.03)<br> <a href="mappe/1_29.05.03_Fil:2.php">Fil 2</a> (29.05.03)<br> <a href="mappe/1_28.02.03_Fil:3.php">Fil 3</a> (01.06.03) Har vært på hotscripts.com og lekt med bl.a. Easysite, men det er foreløpig for komplekst for meg til å kunne ta ut akkurat riktig kodebit, derfor håper jeg noen kan være behjelpelig...
magikern Skrevet 2. oktober 2003 Skrevet 2. oktober 2003 <?php $arr = array( "1_28.02.03_Fil:1.php", "2_29.05.03_Fil:2.php", "3_01.06.03_Fil:3.php"); foreach($arr as $key){ $name1 = substr($key, strrpos($key, '/')); /*der forsvant evt slasher*/ $name2 = substr($name1, 0, strrpos($name1, '.')); /*der forsvant ext*/ $name3 = substr($name2, 0, strpos($name2, '_')); /*litt usikker på den der, men tror vi fikk vekk første tallet*/ $name4 = substr($name3, 0, strrpos($name3, '_')); /*teoretisk sett skal vi da sitte igjen med datoen*/ $date == $name4; $key == $name3; for($i=1;$i<=count($arr);$i++){ echo("<a href="mappe/1_$key">Fil $i</a> ($date) "); } } ?> har ikke testa så er ikke helt sikker på om det virker...
Gilbert Skrevet 2. oktober 2003 Forfatter Skrevet 2. oktober 2003 Supertusentakk Fungerte nesten som forventet, dette ble resultatet: Fil 1 () Fil 2 () Fil 3 () Fil 1 () Fil 2 () Fil 3 () Fil 1 () Fil 2 () Fil 3 () Linkene oppførte seg eksemplariske :-) Så for meg å gjøre det litt mer dynamisk, slik at hvis man la til flere filer ville de komme med i oversikten dynamisk. Tror det da er snakk om å laste filnavnene inn i et array istedenfor å skrive det direkte.
magikern Skrevet 2. oktober 2003 Skrevet 2. oktober 2003 hvis alle filene ligger i samme mappa så kan du bruke noe sånt som der her for å legge de i array: <?php function directory($dir, $type) { $handle = @opendir($dir); if (!$handle) { return false; } $res = array(); while ($file = readdir($handle)) { // se om $file er en mappe if(!is_dir($file)) { /* kun vise filer av typen $type */ if (in_array(substr($file, strrpos($file, '.')), $type)) { $res[$dir.$file] = $file; } } } // while closedir($handle); return $res; } $file = directory("/mappe/",".php"); /*<-- hvis du skal ha flere fil typer skriver du bare: $file = directory("/mappe/",array(".php", ".html")); */ foreach($file as $link => $name) { }
Gilbert Skrevet 2. oktober 2003 Forfatter Skrevet 2. oktober 2003 Men da kan du kanskje svare meg på en annen liten sak også... har en link som heter index.php?locat=banan finnes det en greie som sier hvis locat ikke finnes, er locat = 'banan' ? skjønner jeg er tvetydig og at det finnes to svar, men tenker på denne: hvis locat finnes, så skal den brukes, hvis locat ikke finnes skal 'tomat' bruks. er snakk om et script hvor $frukt avhenger av locat. hvis locat finnes er $frukt = $locat, og hvis den ikke finnes er $frukt = tomat. Ehhh... henger du fremdeles med :wink: ?
magikern Skrevet 3. oktober 2003 Skrevet 3. oktober 2003 if(!isSet($locat)){ $locat = "tomat"; }else{ $frukt = $locat; } blir vel noe sånt
fiLLLipnet Skrevet 4. august 2004 Skrevet 4. august 2004 Æhm. Får ikke scriptet ditt til å virke magikern!? Jeg skal ha det til å liste opp linker til bildefiler som ligger i "/images/" mappen min på serveren. Istedenfor å skrive link til alle filene vil jeg ha den til å skrive for meg... visst du forstår. På forhånd takk.
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å