我在使用此代码时遇到问题,并使用不同的电子邮件来查看目录中的图像(已处理/ $ email)和电子邮件对每个用户各自表单条目的更改,但仅显示来自不管给定的电子邮件是否创建最近的文件夹。
<form action="<?php echo $_SERVER["PHP_SELF"];?>" method="POST">
E-mail:
<input type="text" name="email" id="email2"><br>
<br>
<input type="submit" value="Retrieve" name="submit"><br><br>
</form>
和这里的PHP:
<?php
function scanDirectoryImages($directory, array $exts = array('jpeg', 'jpg', 'gif', 'png'))
{
if (substr($directory, -1) == '/') {
$directory = substr($directory, 0, -1);
}
$html = '';
if (
is_readable($directory)
&& (file_exists($directory) || is_dir($directory))
) {
$directoryList = opendir($directory);
while($file = readdir($directoryList)) {
if ($file != '.' && $file != '..') {
$path = $directory . '/' . $file;
if (is_readable($path)) {
if (is_dir($path)) {
return scanDirectoryImages($path, $exts);
}
if (
is_file($path)
&& in_array(end(explode('.', end(explode('/', $path)))), $exts)
) {
$html .= '<a href="' . $path . '"><img src="' . $path
. '" style="max-height:250px;max-width:250px" /> </a>';
}
}
}
}
closedir($directoryList);
}
return $html;
}
echo scanDirectoryImages(processed.$_POST['email2']);
?>
我试过解封变量等,这是行不通的。当我从任何页面返回表单时,它仍然只显示最近上传的图像文件夹。唯一能够显示新图像的是如果有新目录。我觉得我必须以某种方式接近这个根本错误,我是PHP的新手,所以一些帮助将非常感激。
你有'id'和'name'混淆〜你应该在发布的变量中使用'name' ... – RamRaider