0

我需要为我正在处理的网站制作一个下拉菜单,在该下拉菜单中我想列出目录中的所有文件,但由于我缺乏 Web 开发知识,我很难弄清楚它出去。

任何帮助将不胜感激!

编辑

<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>

这就是我知道如何制作下拉菜单的程度

4

2 回答 2

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>";
于 2012-05-30T20:16:56.110 回答
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()调用。有很多不同的方法可以做到这一点,它只是归结为您的特定需求。

于 2012-05-30T20:18:28.990 回答