【发布时间】:2017-09-06 04:21:49
【问题描述】:
这是我的代码,现在所有图像都在点击发布按钮后上传和显示,我试图让它们在点击发布按钮后一次显示一个,我试过丢失if 语句后的 continue 语句,但会导致图像损坏。我尝试在输出后添加中断,但当然只显示初始图像,有什么建议吗?
<?php
$folder = "images/";
if(isset($_POST['post'])){
if (is_dir($folder))
{
if ($open = opendir($folder))
{
while (($file = readdir($open)) != false)
{
if ($file == '.' || $file == '..')continue;
{
echo '<img src = "images/'.$file.'" width = "150" height = 150>';
}
}
closedir($open);
}
}
if (isset($_POST['upload']))
{
$file_name = $_FILES['file']['name'];
$file_type = $_FILES['file']['type'];
$file_size = $_FILES['file']['size'];
$file_tem_loc = $_FILES['file']['tmp_name'];
$file_store = "images/".$file_name;
if (move_uploaded_file($file_tem_loc, $file_store))
{
echo "files successfully uploaded";
}
}
}
?>
<form action = "?" method = "POST" enctype = "multipart/form-data">
<label>Uploading Files</label>
<p><input type = "file" name = "file"/> </p>
<p> <input type = "submit" name = "upload" value = "Upload Images"> </p>
<p> <input type = "submit" name = "post" value = "Post"> </p>
</form>
【问题讨论】:
-
您只是在特定目录中显示图像。由于您将 if (isset($_POST['upload'])) 保留在 if(isset($_POST['post'])) 中,因此上传功能将无法正常工作
-
您的具体要求是什么
-
是的,我注意到我唯一的要求是一次发布一张图片而不是整个文件夹,并且文件不必位于特定目录中
-
请尝试将 if (isset($_POST['upload'])) 移出其他条件
-
我试过了,结果一样
标签: php forms image post file-upload