john_doe
9.05.2010, 11:11:53
Witam,
napisałem funkcję, która zwraca zawartość katalogu. Kiedy numeruję katalogi od 1 - 9 wiadomo idą po kolei. Gdy dodam katalog o nazwie "10" ustawia się po "1" i tak też funkcja zwraca to na www. Chciałbym po kolei...
function readDirectoryAudience( $path )
{
$files = scandir( $path );
//echo count($files); // tutaj zaczątek by wypisać, że KATALOG JEST PUSTY <-----
echo '<div id="menuList"> <ul>';
if (makeBackLink($_GET['level']) != '../galleries')
{
echo '<li><a href="show.php?level=' . makeBackLink
($_GET['level']) . '">Go back...</a></li>'; } else echo '<li><a href="index.php?level=' . makeBackLink
($_GET['level']) . '">Go back...</a></li>';
</div><br /><br /><br />';
for( $i = 0
; $i <= (count($files) - 1
) ; $i++ ) {
if( $files[$i] == '..' ) continue;
if( $files[$i] == '.' ) continue;
if( !is_file( $path . $files[$i] ) ) {
if( $files[$i] == '.' ) continue;
echo '<div class="photo">';
echo '<div><a href="show.php?level=' . $path . $files[$i] . '">' . $files[$i] . '</a></div>'; //<img src="/pics/jj_logo.png" alt="" />
echo $files[$i] . '</div>'; }
else
{
if( substr ( $files[$i], 0, 5 ) != 'mini_' ) continue
; // if isn`t a mini then continue
echo '<div class="photo">';
echo '<div><a href="' . $path . substr( $files[$i], 5, 20 ) . '" rel="lightbox[roadtrip]">
<img src="' . $path . $files[$i] . '" />
</a></div>';
}
}
}
tehaha
9.05.2010, 11:25:00
no to chyba normalne, przynajmniej w total commanderze też tak jest, musisz nazwać tak żeby miały 0 z przodu, czyli 01, 02, 10, 20 wtedy będą po kolei a najlepiej kilka zer żebyś przy numerze 100 nie miał znowu tej sytuacji, czyli nazwy zrobić np. 0001, 0002, 0010, 0020
tehaha
9.05.2010, 11:35:34
szkoda, że nie znałem tej funkcji:)
john_doe
9.05.2010, 11:43:10
EXTRA,
dałem natsort() zaraz po wywołaniu
$files = scandir( $path );
print_r zwraca ok
Array (
[0] => .
[1] => ..
[2] => 1
[4] => 2
[3] => 10
)
jednak jadąc w pętli for po $i i tak wyświetla po staremu bo klucze są nie po kolei
john_doe
9.05.2010, 11:55:00
no i kosi pięknie dzięki wookieb
poniżej kod dla zainteresowanych
function readDirectoryAudience( $path )
{
$files = scandir( $path );
echo '<div id="menuList"> <ul>';
if (makeBackLink($_GET['level']) != '../galleries')
{
echo '<li><a href="show.php?level=' . makeBackLink
($_GET['level']) . '">Go back...</a></li>'; } else echo '<li><a href="index.php?level=' . makeBackLink
($_GET['level']) . '">Go back...</a></li>';
</div><br /><br /><br />';
foreach( $files as $key => $value )
{
if( $value == '..' ) continue;
if( $value == '.' ) continue;
{
if( $value == '.' ) continue;
echo '<div class="photo">';
echo '<div><a href="show.php?level=' . $path . $value . '">' . $value . '</a></div>';
}
else
{
if( substr ( $value, 0, 5 ) != 'mini_' ) continue
; // if isn`t a mini then continue
echo '<div class="photo">';
echo '<div><a href="' . $path . substr( $value, 5, 20 ) . '" rel="lightbox[roadtrip]">
<img src="' . $path . $value . '" />
</a></div>';
}
}
}