我需要为我正在处理的网站制作一个下拉菜单,在该下拉列表中我想列出目录中的所有文件,但由于我缺乏网络开发知识,我正在努力争取一点点能够弄明白。
非常感谢任何帮助!
修改
<form>
<select name="menu">
<option value="http://www.msn.com/">MSN</option>
<option value="http://www.google.com/">Google</option>
</select>
<input type="button" onClick="location=this.form.menu.options[this.form.menu.selectedIndex].value;" value="GO">
</form>
这就是我知道如何制作下拉菜单的程度
答案 0 :(得分:5)
查看PHP的scandir函数。遍历结果并回显HTML代码,每次循环迭代一个<option>
标记。
这样的事情:
echo "<select name='files'>";
$files = array_map("htmlspecialchars", scandir("path/to/your/files"));
foreach ($files as $file)
echo "<option value='$file'>$file</option>";
echo "</select>";
答案 1 :(得分:0)
你可以这样做:
<select>
<?php
$source_dir = '/var/www/whatever';
$dir_handle = opendir($source_dir);
foreach (glob('*', GLOB_ONLYDIR) as $dir_name) {
?>
<option value="<?= htmlentities($dir_name) ?>">
<?= htmlentities($dir_name) ?>
</option>
<?php } ?>
</select>
如果要排序,过滤或其他任何操作,只需操作glob()
返回的数组即可。或者,您可以使用readdir()
来电,然后is_dir()
来电。有很多不同的方法可以做到这一点,它只是归结为您的特定需求。