---
title: "Lista mappar och bläddra neråt"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/174621-lista-mappar-och-bläddra-neråt"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "Asa"
published: "2008-10-07T11:49:37.000Z"
updated: "2008-10-08T12:01:59.000Z"
replies: 4
views: 544
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/php/174621-lista-mappar-och-bläddra-neråt"
---

# Lista mappar och bläddra neråt

## #1 — Asa, 2008-10-07T11:49Z

Jag vill ha hjälp med denna kod att få den att fortfarande vara öppen när man klickar sig vidare i mapphierarkin. Nu går den bara till första undermapparna och sen går det inte..

```
<?
function Lista_filer($Kat,$dir) {
	$kh=opendir($Kat);
	$fil=readdir($kh);
	echo "<ul>";
	while($fil=readdir($kh)) {
      		if(!($fil=="."||$fil=="..")) {
         		if(is_dir($Kat . '/' . $fil)) {  
	         		if($dir==""){     
            				echo "<li><a href='index2.php?dir=$fil'><b>$fil</b></a>";
	         		}else{
            				echo "<li><a href='index2.php?dir=$dir/$fil'><b>$fil</b></a>";
	         		} 
	    			if($fil == $dir){
            				Lista_filer($Kat . '/' . $fil,$dir);
            			}
             			echo "</li>";
         		} else {
         			echo "<li>$fil</li>";
         		}
		}
	}
	closedir($kh);
	echo "</ul>";
}
 
$mapp = "photos";
if(isset($_GET['dir'])){
	$udir = $_GET['dir'];
}else{
	$udir = "";
}
Lista_filer($mapp,$udir);
?>
```

Permalänk: https://www.webforum.nu/p/174621

## #2 — überfuzz, 2008-10-07T19:27Z

Jag tycker att det är vanskligt att skriva ut allt på en gång, som du gör. Har du funderat på att lägga allt i en array i stället? Om du tex får för dig att du vill göra tjusigare länkar kan du ju ändra det senare?

Vidare brukar det vara lättare att söka fel, om man nu får för sig att göra fel...

Permalänk: https://www.webforum.nu/p/2148793

## #3 — Asa, 2008-10-07T20:18Z

Jag har aldrig hållt på med arrayer så jag vet inte hur man gör allt :(

Permalänk: https://www.webforum.nu/p/2148806

## #4 — Compusa, 2008-10-08T06:47Z

Läs på om Arrayer då, inget konstigt alls och det är en fundamental datatyp som du måste veta hur du ska använda :) 

Börjar här:
<http://www.phpf1.com/tutorial/php-array.html>

Sedan kan PHP-referensmanualen om arrayer vara bra när du fått lite kött på benen:
<http://se2.php.net/array>

Permalänk: https://www.webforum.nu/p/2148840

## #5 — überfuzz, 2008-10-08T12:01Z

Nu vet jag ju inte exakt vad 'allt' är. Men... stoppa in filsystemet i en array så kan du ju i alla fall leka lite med den arrayen.

```php
function mappLista($mapp, $rekursiv = true)
{
	//Så här initierar du en array i php.
	$resultat = array();
	$hantering = opendir($mapp);

	while (false !== ($fil = readdir($hantering)))
	{
		if ($fil != '.' && $fil != '..')
		{
			if(is_dir($mapp.DIRECTORY_SEPARATOR.$fil) && $rekursiv === true)
			{
				$resultat[] = array($fil => mappLista($mapp.DIRECTORY_SEPARATOR.$fil));
			}
			else
			{
				$resultat[] = $fil;
			}
		}
	}

	closedir($hantering);
	return $resultat;
}
```

Vill du se hur en array ser ut kan du använda:

```php
echo "<pre>";
 print_r($array);
echo "</pre>";
```

Permalänk: https://www.webforum.nu/p/2148886

---

Tråden på webben: https://www.webforum.nu/amne/php/174621-lista-mappar-och-bläddra-neråt
