05. april 2004 - 04:25 Der er 4 kommentarer og
2 løsninger

Sorter billeder i mappe

Hvordan sorterer jeg disse billeder i numerisk rækkefølge?


<?

$mappe=$billede2."/pics/";


function list_dir($mappe)
{
if($mappe[strlen($mappe)-1]!='')
    $mappe.='';
static $result_array=array(); 
$handle=opendir($mappe);
while ($file = readdir($handle)) {
  if($file=='.'||$file=='..')
    continue;
  if(is_dir($mappe.$file))
    list_dir($mappe.$file.'\\');
  else
    $result_array[]=$mappe.$file;
  }   
  closedir($handle);

  return $result_array;   
}

function images_left($mappe, $current_image) {
$total_images = list_dir($mappe) ;
$total_images = count($total_images) ;
$left = $total_images - $current_image ;

return $left ;
}

if (!$taeller) {
$taeller = 0 ;
setcookie("taeller", 0, time() + 0) ;
}

if ($page == "next") {
$taeller = $taeller + 1 ;
} else if ($page == "back") {
$taeller = $taeller - 1 ;
}
?>

<html>
<head>
<link rel="stylesheet" type="text/css" href="hnclude/style.css">
<title>Billede</title>
<script language='javascript' src='include/resize.js'></script>
</head>
<body onload='VisBillede();' topmargin=0 bottommargin=0 leftmargin=0 rightmargin=0 scroll="auto">

<?php
  if ($mappe) {
    $antal_billeder = list_dir($mappe) ;
    $antal = count($antal_billeder) ;
    echo $taeller."/".$antal."<br>";
    $billede = $antal_billeder[$taeller] ;
    echo "<img src='$billede' alt='' NAME=\"pic\"><br>" ;     
    if($taeller==0){
    echo "Forrige " ;
}else{
    echo "<a href='imageopen.php?mappe=" . $mappe . "&page=back&billede2=$billede2&taeller=$taeller'>Forrige</a> " ;
}
if($antal==$taeller+1){
    echo "Næste " ;
}else{
    echo "<a href='imageopen.php?mappe=" . $mappe . "&page=next&billede2=$billede2&taeller=$taeller'>Næste</a> " ;
}

  }
?> 

</body>
</html>
Avatar billede hmortensen Nybegynder
05. april 2004 - 08:40 #1
05. april 2004 - 12:27 #2
Ja, men ved ikke hvilken vairabel jeg skal skrive sort($variabbel) og ved heller ikke hvor den skal stå...
Avatar billede hmortensen Nybegynder
05. april 2004 - 12:39 #3
Prøv sådan her:

<?php
  if ($mappe) {
    $antal_billeder = list_dir($mappe) ;
    $antal = count($antal_billeder) ;
    echo $taeller."/".$antal."<br>";
    $billede = $antal_billeder[$taeller] ;
    sort($billede);
    echo "<img src='$billede' alt='' NAME=\"pic\"><br>" ;     
    if($taeller==0){
    echo "Forrige " ;
}else{
05. april 2004 - 13:03 #4
Warning: sort() expects parameter 1 to be array, string given

Denne linie:    sort($billede);
05. april 2004 - 17:09 #5
Har fudnet ud af at det ikke er fordi det skal sorteres. Der er fordi at jeg IKKE skal hente alle filer. Jeg skal kun hente billedfilerne. Ved bare ikke hvordan jeg gør det... Har en kode her, men ved ikke hvordan den skal bruges:

if (preg_match("/(jp(e)?g|gif|bmp|png)$/i", $file)) {

}

Skal jeg lukke dette og oprette et nyt spørgsmål?
05. april 2004 - 20:56 #6
Lukket!
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