Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] jak sczytać pliki z folderu i wyswietlić je w tabeli?
Forum PHP.pl > Forum > Przedszkole
siemieng
Witam;

Mam problem z prostym zapewne skryptem ale jak się okazuje nie dla mnie:/

Chodzi mi o to, żeby sczytać pliki (zdjęcia) z konkretnego folderu i wyświetlić je w tabeli na stronie html.
Ogólnie taka mała przeglądarka zdjęć w php bez udziału baz danych.
Mi chodzi o to, żeby zdjęcia wyświetlany się po 3 w rzędzie a ilość rzędów, żeby była zależna od ilości plików w folderze.

Oto mój kod: dry.gif

<?
$dir_name = \"/www/sp/fotki/\";

$dir = opendir ($dir_name);

$image_list = \"<ul>\";
$image_check = 0;

while ($image_name= readdir($dir))
{
if (($image_name != \".\") && ($image_name != \"..\"))
{
$image_list .= \"<li>\".\"<a href=fotki/$image_name>\".$image_name.\"</a>\";
$image_check = 1;
}
}

$image_list .= \"</ul>\";

closedir ($dir);


if ($image_check == 1)
{
echo \"Pliki znajdujące się na serwerze:\".\"<br>\".\"$image_list\";
}

else if ($image_check == 0)
{
echo \"Na serwerze nie ma aktualnie żadnych zdjęć.\";
}
?>

Wszystko działa ale jeśli chodzi o wyświetlanie w jednej linii bądź jedno pod drugim.
Gdy probowałem zrobić to w 2 pętlach for czy jakoś inaczej to albo mi się zdjęcia wyświetlały w jednym rzędzie, albo tabela działała ale w jednym rzędzie były 3 te same zdjęcia bo ten fragment kodu ($image_list .= \"<li>\".\"<a href=fotki/$image_name>\".$image_name.\"</a>\";) powodował że zmienna $image_list zawsze otrzmywała ten sam plik worriedsmiley.gif

Potem wymyśliłem wrzucić zdjęcia do tablicy, oto kod:
<?
$dir_name = \"/usr/krasnal/www/php_tray/sp/fotki/\";

$dir = opendir ($dir_name);

$image_check = 0;

while ($image_name= readdir($dir))
{
if (($image_name != \".\") && ($image_name != \"..\"))
{
$image_tab[] = \"$image_name\";
$image_check = 1;
}
}

closedir ($dir);

if ($image_check == 1)
{
echo \"Pliki znajdujące się na serwerze:\".\"<br>\";


$wynik=\"<table align=center border=1>\";

reset ($image_tab);
while (list($klucz, $wartosc) = each($image_tab))
{
$wynik.= \"<td>$wartosc</td>\";
}


$wynik .= \"</table>\";
echo \"$wynik\";

}

else if ($image_check == 0)
{
echo \"Na serwerze nie ma aktualnie żadnych plików.\";
}
?>
I tak w sumie osiągnąłem tym to samo co wyżej sadsmiley02.gif
Dalej mi pętle mające powodować przejście w tabeli do kolejnego wiersza po wyświetleniu trzech kolumn nie działały albo się zapętlały blink.gif

Proszę o podpowiedź - jak to zrobić przy pomocy samego php, bez udziału java script bądź baz danych?questionmark.gifquestionmark.gif

Z góry dzięki za odpowiedź biggrin.gif
Pozdrawiam
mike
1. Proszę poprawić tytuł wątku zgodnie z zasadami panującymi na forum Przedszkole;
2. Proszę również przeedytować treść powyższego posta stosując w odpowiednich miejscach wymagane tagi bbCode (szczegóły w podanym przez mnie linku)

W przypadku niespełnienia powyższych próśb wątek zostanie zamknięty oraz usunięty.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.