sunsetting
witam!
mam mały problem z odczytem zawartości katalogu. Otoż skrypt znajdujacy sie katalog wyżej nie chce wyświetlić zawartości katalogu images
Kod: <?
$kat="/images/";
$d=opendir($kat);
# czyta pozycje
while($pozycja=readdir($d))
{
# nie czytuje pliku z kat
if((is_file($pozycja))&&($pozycja!="gal_core.php")&&($pozycja!=".."))
{
$katalog[$licznik]=$pozycja;
$licznik++;
}
}
closedir($d);
#sortuje
sort($katalog);
#wypisuje pliki
for ($licznik=0;$licznik<count($katalog);$licznik++)
{
echo"<image><filename>", $katalog[$licznik], "</filename><caption>", $katalog[$licznik], "</caption>";
}
?>
Ma ktoś może pomysł co może być źle?? Dodam że jak ustawię:
Kod: $kat=".";
Skrypt wtedy wykona się prawidłowo, tzn wyświetla zawartość katalogu, w którym jest skrypt.
Moze za duzo Ci nie pomoge, ale dam rade. Ja jak pisalem program w delphi i mi cos nie dzialalo to co kilka linijek wstawialem kod ktory wyslwietlal mi jakis tekst i odpalalem program. Dzieki temu wiedzialem do kad dochodzi program a co nie jest wykonywane. Wiec moze w petli zrob zeby wyswietlalo Ci przy kazdym powturzeniu jakas zmienna i dzieki temu bedziesz wiedziec ile razy sie powturzyla wiec dowiesz sie ile plikow widzi.
Moze jest niepotrzebna ta kreska przy nazwie katalogu?
Ja mam taki kod:
Kod:
<?php
$dir=opendir("przyroda/");
while($nazwa=readdir($dir))
{
if(($nazwa!=".")&&($nazwa!=".."))
{
$pliki[]=$nazwa;
}
}
$ilosc=count($pliki);
$ilosc/=2;
echo ("<h2><font color=\"black\"> W galeri jest $ilosc zdjec </font></h2>");
?>
I mi dziala bez tej kreski. Niestety nie znam sie na php (pracuje nad tym) i wiecej nic na ten temat nie powiem.
Jak w swoim skrypcie dasz w tym miejscu echo:
Kod: <?
# nie czytuje pliku z kat
echo $pozycja;
if((is_file($pozycja))&&($pozycja!="gal_core.php")&&($pozycja!=".."))
{
$katalog[$licznik]=$pozycja;
$licznik++;
}
?>
To zrozumiesz dlaczego funkcja is_file zwraca false bo nie znalazła pliku i nie dodała go do tabeli po czym funkcja sort nie miała co sortować. Zamień swój warunek na:
Kod:
if((is_file($kat.$pozycja))&&($pozycja!="gal_core.php")&&($pozycja!=".."))
Oraz Kod:
$kat='images/';
@edit1 do bartas: stary firefoxa używasz to zainstaluj sobie słownik.
thx chłopaki, zrobiłem tak:
Kod: <?
$kat="./images/";
$d=opendir($kat);
# czyta pozycje
while($pozycja=readdir($d))
{
# nie czytuje pliku z kat
if((is_file($kat. $pozycja))&&($pozycja!="gal_core.php")&&($pozycja!=".."))
{
$katalog[$licznik]=$pozycja;
$licznik++;
}
}
closedir($d);
#sortuje
sort($katalog);
#wypisuje pliki
for ($licznik=0;$licznik<count($katalog);$licznik++)
{
echo"<image><filename>", $katalog[$licznik], "</filename><caption>", $katalog[$licznik], "</caption>";
}
?>
@edit1 do bartas: stary firefoxa używasz to zainstaluj sobie słownik.
Mam ale czesto pisze z komputera ktory nie ma zainstalowanych polskich znakow (mieszkam w szwecji) i jak nie robie literay z kreskami to zawsze podkresla wiec nie wiem czy jest blad