Gå til innhold

Strippe filnavn og vise tittel på grunnlag av filnavnet


Anbefalte innlegg

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...

Lenke til kommentar
Videoannonse
Annonse


<?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...

Lenke til kommentar

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.

Lenke til kommentar

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) {



}

Lenke til kommentar

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: ?

Lenke til kommentar
  • 10 måneder senere...

Æ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.

Lenke til kommentar

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 konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...