2013-06-19 103 views
0

我想构建我自己的文件目录,但我一直卡在一个部分一天,不能找出如何处理这个问题。当下面的代码运行时,我检查是否它的文件或目录是我想实现的,当代码检测到它是一个目录时,单击打开文件夹时,它将打开包含它包含的文件列表的文件夹,任何人都可以帮助我并给我一些想法如何解决这个问题?使用php打开目录文件夹

echo'<table style="background-color: beige; padding: 10px; border: 1px dashed #999;">'; 
echo'<tr> 
<th>File Name</th> 
<th colspan="3">Action</th> 
</tr>'; 
foreach(glob('language/*') as $filename){ 
if ($filename != 'connect.php' && $filename != 'edit.php' && $filename != 'index.php' && $filename != 'nbproject'){ 
if(is_file($filename)){ 
echo'<tr> 
<td>'.$filename.'</td> 
<td><a href="'.$filename.'" name="ru">RU</a></td> 
<td><a href="'.$filename.'" name="eng">ENG</a></td> 
<td><a href="'.$filename.'" name="lt">LT</a></td> 
</tr>'; 
var_dump($filename); 
} 
else if(is_dir($filename)){ 
echo '<tr> 
<td>'.$filename.'</td> 
<td colspan="3"><a href="'.$filename .'" name="open" >Open Folder</a><td> 
</tr>'; 
} 
} 
} 
echo'</table>'; 

我想我可以opendir功能或glob功能做到这一点我会在 正确的轨道上? tnx的帮助。

P.S. 还有一个问题我用glob来读我的目录是readdir这个还是比较好实现的,还是没有区别?并随时指出我的代码中的任何其他缺陷:)

回答

2

您不需要表单标签。您应该直接从标签的href属性传递包含文件夹名称的变量。例如

<a href="myscript.php?folder=<?php echo $foldername ?>"><?php echo $foldername ?></a> 

请务必正确检查用户试图打开的目录是否安全,以免造成严重的安全后果。