1
基本上,用户上载图像。所拍摄的相片,检查正确的文件类型,并上传到这里的服务器:图像没有显示正确的图像..?
$directory = 'uploads/';
$files = glob($directory . 'audit'.$id.'_image*.jpg');
$count = 0;
if ($files !== false) {
$count = count($files) + 1;
}
if (!empty($_FILES)) {
$tempFile = $_FILES['file']['tmp_name']; //3
$rename = explode('.', $_FILES['file']['name']);
$nameString = 'audit'.$id.'_image'.$count.'.'.strtolower($rename[1]);
//only allow certain image files
$allowed = array( 'jpg'
);
if (in_array(strtolower($rename[1]), $allowed)) {
$targetPath = dirname(__FILE__) . $ds. $storeFolder . $ds; //4
$targetFile = $targetPath. $nameString; //5
move_uploaded_file($tempFile,$targetFile); //6
}
}
文件的名称更改为适合用于检索格式。这将是 audit(iD)_image*.jpg
或一个例子audit65_image1.jpg
现在,这个工作正常,图像上传。
但是,当涉及到查看文件检索..发生这种情况!
$directory = 'uploads/';
$files = glob($directory . 'audit'.$row['id'].'_image*.jpg');
if (count($files) > 0) {
?>
<div class="row">
<div class="col-md-12">
<section class="panel">
<div class="panel-body">
<div class="col-md-12" style="text-align:center;">
<div class="panel-heading no-b">
<h5>Image <b>Uploads</b></h5>
</div>
</div>
<?php
foreach ($files as $key => $value) {
?>
<div class="col-sm-2">
<a href=<?php echo '"'.$value.'"'; ?>><img style="box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.65);" src=<?php echo '"'.$value.'"'; ?> class="superbox-img"/></a>
</div>
<?php
}
?>
</div>
</section>
</div>
</div>
<?php
}
?>
我再也看不到问题了!然而,在网页上..它会加载不正确的图像,所以如果我上传了3个文件,它就像是保存到我的系统或某个系统的一部分,这是一个大问题。但它基本上显示了一个不存在的图像。如果我将文件名称从audit65_image1.jpg
更改为audit65_image3.jpg
,则网页上显示的图像会发生变化。我非常困惑。我试图在不同的计算机上加载网页来解释缓存,并且它也在那里加载了错误的图像,即使该文件不存在它正在加载的图像!
有没有人有任何想法发生了什么问题?
'var_dump($ _ FILES));'这样你就可以检查并看到你收到的文件了吗? –
@RyanVincent我收到了正确的文件,但是,在uploads文件夹中,该文件可能被称为'image3',但浏览器检索到不同的图像。只有以前有过这个名字的图片。 – Daniel