2015-07-09 3 views
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, то изображение, отображаемое на веб-странице, изменится. Я так сильно смущен. Я попробовал загрузить веб-страницу на другом компьютере для учета кеширования, и он загрузил неправильное изображение там, даже если файл не существует для изображения, которое он загружает!

Кто-нибудь знает, что происходит не так?

+0

'var_dump ($ _ FILES));' так что вы можете проверить и посмотреть, какие файлы вы получили ?. –

+0

@RyanVincent Я получаю правильные файлы, однако в папке uploads файл можно назвать «image3», но браузер получает другое изображение. Только если раньше у него был образ этого имени. – Daniel

ответ

0

Чтобы дать уникальное имя файлам изображений, попробуйте добавить временную метку к имени изображения перед сохранением.

Смежные вопросы