Sziasztok!
Egy olyan problémával fordulnék hozzátok, hogy van ugyebár a /www könyvtáram, ebbe van egy index fájl, tehát amit elér a felhasználó w w w.vmi.hu ez ugyebár a /www ben található index.php fájlt nyitja meg! Viszont én szeretnék egy másik könyvtárat létrehozni, amit így lehetne elérni www.vmi.hu/masik. Ez ugye a /www/masik könyvtárban található index.php-t nyitja meg ami ki listázná ennek a könyvtárnak a tartalmát /www/masik_tarolo/masik_1 viszont nem történik semmi üres oldal jelenik meg. Az /etc/apache2/sites-avaible/default fájlba egy ilyen van beállítva:
<------>
<------><------>Options -Indexes FollowSymLinks MultiViews
<------><------>AllowOverride None
<------><------>Order allow,deny
<------><------>allow from all
<------>
Próbáltam ezt beleilleszteni de ez sem segített:
<------>
<------><------>Options -Indexes FollowSymLinks MultiViews
<------><------>AllowOverride None
<------><------>Order allow,deny
<------><------>allow from all
<------>
A /www/masik könyvtárba található index tartalma pedig ez volna:
< ?
$mappa="../var/www/masik_tarolo/masik_1";
$a="n";
$megnyit=@opendir($mappa );
while( $fajl=@readdir($megnyit)){
if($fajl!="." && $fajl!="..")
{
echo '< tr >< td > < a href="'.$mappa.'/'. $fajl . '" target="_blank" >'.$fajl.'< /a >< /td >< /tr >';
}
}
? >
Előre is köszönöm a segítséget!
- 1654 megtekintés
Hozzászólások
Üres oldalt php általában akkor ad, ha van valami hiba a kódban és nem fut le a script. Nézd meg a szerveren az error.log-ot.
Aztán szemre ez is furcsa: if($fajl!="." && $fajl!="..")
Én így csinálnám: if ( ('.' != $fajl) && ('..' != fajl) )
Aztán opendir-nél nem foglalkozol a return value-val, nem kezeled le ha esetleg hiba lenne.
Ez is érdekes: $mappa="../var/www/masik_tarolo/masik_1";
Hol fut ez a script egyáltalán?
- A hozzászóláshoz be kell jelentkezni
Igen fut! Ha a saját könyvtárában értem én var/www/masik/masik_1 ennek a könyvtár tartalmát simán kilistázza, amúgy kapcsos zárójellel le van zárva az if ág!
"Ez is érdekes: $mappa="../var/www/masik_tarolo/masik_1";" Ebbe mi az érdekes?!
- A hozzászóláshoz be kell jelentkezni
akkor mar inkabb if (!in_array($file, array(".", ".."))) {
esetleg if (!preg_match("#^\.{1,2}$#", $file)) {
t
- A hozzászóláshoz be kell jelentkezni
Igazából azt nem értem, hogy miért listázza ki azoknak a könyvtáraknak a tartalmát ami a /var/www/masik könyvtáron belül vannak és ami nem ott van speciel ez /var/www/tarol_masik/masik_1 ezt meg nem..! Tehát a kód az kilistázza a tartalmát a könyvtárnak csak ha más az elérése akkor nem pontosabban h nincs egy adott könyvtáron belül!
- A hozzászóláshoz be kell jelentkezni
probald ki, hogy kiveszed a '@' jelet az opendir() es readdir() elol, ugy talan latni fogod, hogy mi a hiba...
- A hozzászóláshoz be kell jelentkezni
Köszönöm! Meg is találtam a hibát! AZ eléréssel volt probléma!
- A hozzászóláshoz be kell jelentkezni