![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 28.08.2007 Ostrzeżenie: (0%) ![]() ![]() |
W jaki sposób z czegoś takiego (zawartość pliku tekstowego, przedstawiająca rozkład plików w katalogu)
PS: Każdy folder, zanim zostanie podany jakiś plik z niego, zostaje najpierw 'zadeklarowany' _folder1|To jest nazwa 1 folderu _folder1/plik1.html|To jest nazwa jakiegoś pliku _folder1/plik2.html|To jest inny plik _folder1/podfolder|To jest jakiś podfolder _folder1/podfolder/plik3.html|To jest plik w podfolderze _folder2|Drugi folder _folder2/plik99.html|To jest jakiś plik Zrobić coś takiego: Kod <ul id="menu1" class="tree-menu"> <li><a href="javascript:void(0)">To jest nazwa 1 folderu</a> <ul> <li><a href="_folder1/plik1.html">To jest nazwa jakiegoś pliku</a></li> <li><a href="_folder1/plik2.html">To jest inny plik</a></li> <li><a href="#">To jest[font="Verdana"] jakiś podfolder</a> <ul> <li><a href="_folder1/podfolder/plik3.html">To jest plik w podfolderze</a></li> </ul> </li> </ul> </li> <li><a href="#">Drugi folder</a> <ul> <li><a href="_folder2/plik99.html">To jest jakiś plik</a></li> </ul> </li> </ul> Dzięki za jakiekolwiek wsparcie ![]() Ten post edytował tramer1991 27.10.2007, 12:35:56 |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 23 Pomógł: 2 Dołączył: 26.04.2007 Ostrzeżenie: (0%) ![]() ![]() |
No cóż, trochę to zamieszane, ale mam nadzieję, że działa
![]() Kod <?php
echo '<ul id="menu1" class="tree-menu">'."\n"; $last_level = 0; $fp = @fopen('test.txt','r'); if ($fp) { while (!feof($fp)) { $line = fgets($fp, 4096); if(trim($line)=='') break; $elements = explode('|',$line); $level = substr_count($elements[0],'/'); $tabs = ''; for($j=0;$j<=(2*$level);$j++) $tabs .= "\t"; $elements[1]=str_replace("\r\n","",$elements[1]); if(strpos($elements[0],'.')){ //jest plik $last_was_folder = FALSE; echo $tabs.'<li><a href="'.$elements[0].'">'.$elements[1].'</a></li>'."\n"; }else{ //jest katalog if($last_level>$level){ if($last_was_folder) $last_level++; for($i=0;$i<($last_level-$level);$i++){ $t = ''; $t2 = ''; for($k=0;$k<(2*$last_level-2*$i);$k++){ $t .= "\t"; ($k==0) ? $t2 .= '' : $t2 .= "\t"; } echo $t.'</ul>'."\n".$t2.'</li>'."\n"; } }else if($last_was_folder){ for($k=0;$k<(2*$last_level-2*$i);$k++){ $t .= "\t"; ($k==0) ? $t2 .= '' : $t2 .= "\t"; } echo $t.'</ul>'."\n".$t2.'</li>'."\n"; } echo $tabs.'<li><a href="#">'.$elements[1].'</a>'. "\n\t".$tabs.'<ul>'."\n"; $last_was_folder = TRUE; } $last_level = $level; } fclose($fp); if($last_level==0) echo "\t\t".'</ul>'."\n\t".'</li>'."\n"; for($i=0;$i<($last_level);$i++){ $t = ''; $t2 = ''; for($k=0;$k<(2*$last_level-2*$i);$k++){ $t .= "\t"; ($k==0) ? $t2 .= '' : $t2 .= "\t"; } echo $t.'</ul>'."\n".$t2.'</li>'."\n"; } } echo '</ul>'; ?> |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 18.07.2025 - 00:58 |