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