我有一个脚本,它将列出所有文件从服务器上的图像文件夹到一个下拉框。
$dir='images';
$list=scandir($dir);
if(isset($_POST['submit'])) echo 'Selected: ' . $_POST['image'];
foreach($list as $file)
{
//ignore . (current dir) and .. (parent dir)
if($file!=='.'&&$file!=='..')
{
echo "<option value='"$file'"";
if(isset($_POST['submit'])&&$_POST['image']==$file) echo 'selected="selected"';
echo ">$file</option>";
}
}
我想做的是当选择图像的文件名时,该图像将显示。
echo "<img src='images/". $file ."' />";
我尝试使用文件表,但它只能显示目录中的最后一个图像。
您必须使用Javascript完成此操作。一旦php脚本加载,它没有人知道发生了什么在用户窗口。您将需要为选项组的onChange even创建一个事件侦听器。当选择改变时,你会想要替换用于显示预览的图像标签的src。
我强烈建议使用JS库,如Jquery或类似的来帮助进行事件监听和dom操作。
如果你的意思是在表单加载上这样做,我会说替换
if(isset($_POST['submit'])&&$_POST['image']==$file) echo 'selected="selected"';
if(isset($_POST['submit'])&&$_POST['image']==$file)
{
echo 'selected="selected"';
$selected_file = $file;
}
那么这个
echo "<img src='images/". $selected_file ."' />";
因为现在,它只会加载foreach