0

这个下拉列表,显示一个文件夹中的所有文件,其中一个将被选中使用。有没有办法显示加载页面时选择了哪个文件?目前它每次都说“选择一个文件”。

<select name="image" type="text" class="box" id="image" value="<?=$image;?>">
<option value='empty'>Select a file</option> 
<?php

$dirname = "images/";
$images = scandir($dirname);

// This is how you sort an array, see http://php.net/sort
natsort($images);

// There's no need to use a directory handler, just loop through your $images array.
foreach ($images as $file) {
    if (substr($file, -4) == ".gif") {
        print "<option value='$file'>$file</option>\n"; }
    }
?>
</select>
4

3 回答 3

1

与 Zak 和 NickF 的答案类似,您可以使用

selected="selected"

如果您喜欢使用 XHTML,请在您的选项标签中。

(顺便说一句,我的新声誉还不允许我对答案添加评论。)

于 2008-11-04T15:25:01.853 回答
1

我觉得 SO 正在一点一点地为你编写你的应用程序......

反正,

<?php
foreach ($images as $file) {
    if (substr($file, -4) == ".gif") {
        print "<option value='$file'"
            . ($file == $image ? " selected" : "")
            . ">$file</option>\n";
    }
}
?>

于 2008-11-04T02:32:19.387 回答
1

对所选文件使用选项上的“选定”标签

首先检查从帖子中选择或获取哪个文件(尚不清楚表单从您的帖子中采取的操作..假设获取)

在循环中使用三元运算符:

$selected = $_GET['image'] == $file ? "selected" : "";

print "<option $selected value='$file'>$file</option>\n";
于 2008-11-04T02:35:06.400 回答