Avatar billede htmlkongen Novice
28. juli 2006 - 19:29 Der er 3 kommentarer og
1 løsning

Vælge efter dato

Her er et script som gør at jeg bare skal ligge billeder i en mappe så bliver de indelt aftomatisk på siden. Det er kanon lavet. Der er bare en ulempe. HVis jeg lægger flere op så indeler dem billederne efter navn og ikke efter dato?!


Hvor i koden skal det ændres så den kan gøre det?


<?php
//$bredde = "90px";
$hoejde = "120px";
$basename = basename(__file__ , ".php");
$mappenavn ="allebilleder/$basename"; //nu er jeg stiv

if ($mappe = opendir($mappenavn)) {
while (false !== ($fil = readdir($mappe))) {
$filtype = strtolower(substr($fil,strrpos($fil,".")));

if ($filtype==".png" OR $filtype==".jpg" OR $filtype==".gif") { //Her smider du bare flere billedetyper ind hvis det er tilfældet

print"<a href =\"$mappenavn/$fil\" onClick=\"openWinSmall(this.href);return false;\"><img src=\"$mappenavn/$fil\" style=\"width:$bredde; height:$hoejde; border:0 solid black;\" /></a>\n\n";

$i++;
if ( $i/8 == round($i/8 )) {
print"";
}
}else{
}
}
}
?>
Avatar billede coderdk Praktikant
30. juli 2006 - 02:01 #1
Koden skal skrives helt om... Du kan f.eks. bruge et multidimensionelt array og bruge usort()

Her er noget helt utestet:

    //$bredde = "90px";
    $hoejde = "120px";
    $basename = basename(__file__ , ".php");
    $mappenavn ="allebilleder/$basename"; //nu er jeg stiv
   
    $files = glob( "$mappenavn/*.{png,jpg,gif}", GLOB_BRACE | GLOB_NOSORT );
    $farr = array();
    foreach ( $files as $fil )
    {
        $farr[] = array( "name" => $fil, "date" => filemtime( $fil ) );
    }
    function cmp( $a, $b )
    {
        if ( $a['date'] == $b['date'] ) return 0;
        return ( $a['date'] < $b['date'] ? -1 : 1 );
    }
    usort( $farr, "cmp" );
   
    foreach ( $farr as $fil )
    {
        echo "<a href =\"$fil[name]\" onClick=\"openWinSmall(this.href);return false;\"><img src=\"$fil[name]\" style=\"width:$bredde; height:$hoejde; border:0 solid black;\" /></a>\n\n";
    }
Avatar billede htmlkongen Novice
11. august 2006 - 21:22 #2
Oki doki. Mange tak for hjælpen :)

Smid svar så får du pointsne :)

TARK! :D
Avatar billede coderdk Praktikant
11. august 2006 - 21:46 #3
så lidt :)
Avatar billede htmlkongen Novice
15. august 2006 - 05:58 #4
Merci :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester