Hallo Loits.
Ich baue gerade mal wieder an nem Script und stehe kurz vor dem Wahnsinn.......
gestern wurde folgender Thread aufgemacht.....
http://www.php-resource.de/forum/sho...threadid=38145
Da kam mir plötzlich die Idee, das so zu bauen, das man durch die Verzeichnisse düsen kann, die modes anzeigen lassen kann und wenn das Script mal fertig ist, die Modes mittels chmod() ändern kann.
Das düsen durch die verzeichnisse habe ich hinbekommen, das ändern der modes bekomme ich auch noch hin. (siehe Thread oben)
Allerdings brauche ich nun fogenden Denkanstoß:
Wenn Ihr Euch das Script unten mal anschaut, kommt man leicht auf die Idee, das Teil z.B. wie folgt aufzurufen...
browser.php?ordner[1]=../../
und schwups, befindet sich man im root des Servers.
Wie kann ich verhindern, das ein Verzeichnis oberhalb des scriptes aufgerufen wird?
Wie würdet Ihr das lösen ?
Ich baue gerade mal wieder an nem Script und stehe kurz vor dem Wahnsinn.......
gestern wurde folgender Thread aufgemacht.....
http://www.php-resource.de/forum/sho...threadid=38145
Da kam mir plötzlich die Idee, das so zu bauen, das man durch die Verzeichnisse düsen kann, die modes anzeigen lassen kann und wenn das Script mal fertig ist, die Modes mittels chmod() ändern kann.
Das düsen durch die verzeichnisse habe ich hinbekommen, das ändern der modes bekomme ich auch noch hin. (siehe Thread oben)
Allerdings brauche ich nun fogenden Denkanstoß:
Wenn Ihr Euch das Script unten mal anschaut, kommt man leicht auf die Idee, das Teil z.B. wie folgt aufzurufen...
browser.php?ordner[1]=../../
und schwups, befindet sich man im root des Servers.
Wie kann ich verhindern, das ein Verzeichnis oberhalb des scriptes aufgerufen wird?
Wie würdet Ihr das lösen ?
PHP-Code:
<a href="?">/</a>
<?php
$countordner =count($ordner);
if (!$path){$path=getcwd();};
for ($i=1;$i<=$countordner;$i++)
{
if ($updir<>"true") {$backordner=$backordner."/".$ordner[$i];}
$chordner=$chordner."/".$ordner[$i];
$urlordner=$urlordner."&ordner[".$i."]=".$ordner[$i];
?>
<a href="?backordner=<?php echo $backordner;?><?php echo $urlordner;?>&updir=true"><?php echo $ordner[$i];?></a>
<?php
};
?>
<hr>
<?php
if ($backordner and $updir<>"true") {$path=getcwd().$backordner;} else {$path=$path.$chordner."/";};
chdir($path);
$hook = opendir($path);
while (($file = readdir($hook)) !== false)
{
if ($file != "." && $file != "..")
{
if (is_dir($file))
{?>
<br>
<a href="?ordner[<?php echo ($countordner+1);?>]=<?php echo $file;?><?php echo $urlordner;?>"><?php echo $file;?></a><?php }
else
{
}
}
}
closedir($hook);
?>
<hr>
<table width="100%" border="0">
<tr>
<td>Filename</td>
<td>Mode</td>
<td>Size</td>
</tr>
<?php
$hook = opendir($path);
while (($file = readdir($hook)) !== false)
{
if ($file != "." && $file != "..")
{
if (is_dir($file))
{}
else
{
?>
<tr>
<td><a href="<?php echo $backordner."/".$file;?>" target="_blank"><?php echo $file;?></a></td>
<td><?php echo decoct(fileperms($file));?></td>
<td><?php echo filesize($file);?></td>
</tr>
<?php
}
}
}
closedir($hook);
?>
</table>
Kommentar