@ Vicky, потому что изображения и страницы кэшируются независимо. Посмотрите мое решение выше о том, как предотвратить кэширование изображений в вашем шаблоне;)

нувшись с проблемой, связанной с браузером chache.

function doUpload(){

  $data['includeView'] = "profileconfirm";

 $config['upload_path'] = './img/images/uploaded/';
 $config['allowed_types'] = 'gif|jpg|png|jpeg';
 $config['max_size'] = '5000';
 $config['max_width']  = '1024';
 $config['max_height']  = '768';
 $config['file_ext'] =".jpeg";
 $config['file_name'] = $profileId.$config['file_ext'];
 $config['overwrite'] = TRUE;
 $this->load->library('upload', $config);

 $query = null ; 

 if ( ! $this->upload->do_upload()){
  // Error here
 }else{
 // Image uploaded sucess fully
 // $profile - business logic to populate $profile

  $data['PROFILE_DETAILS'] = $profile;

 $this->load->view('index', $data);
}

этот метод используется для загрузки изображения. После успешной загрузки изображения загружается страница просмотра индекса, которая внутренне включает страницу просмотра профиля подтверждения.

Но на странице профиля подтверждения новое загруженное изображение не будет отражаться. Иногда это работает нормально, но иногда нет, это происходит в большинстве случаев.

Пожалуйста помоги

Ответы на вопрос(3)

Решение Вопроса

....
$this->output->set_header("HTTP/1.0 200 OK");
$this->output->set_header("HTTP/1.1 200 OK");
$this->output->set_header('Last-Modified: '.gmdate('D, d M Y H:i:s', $last_update).' GMT');
$this->output->set_header("Cache-Control: no-store, no-cache, must-revalidate");
$this->output->set_header("Cache-Control: post-check=0, pre-check=0");
$this->output->set_header("Pragma: no-cache");
$this->load->view('index', $data);

Примечание: выходной класс инициализируется автоматически

 S.M_Emamian11 апр. 2016 г., 08:12
что такое$last_update ?
 sheetal21 янв. 2017 г., 08:08
почему вы используете $ last_update здесь?

.

<img src="filename.jpg?<?php echo time(); ?>">

Чтобы полностью отключить кэш с помощью одной строки кода (после расширения библиотеки вывода), просмотритеhttp://www.robertmullaney.com/2011/08/13/disable-browser-cache-easily-with-codeigniter/
Отказ от ответственности, мой блог

Редактировать 1: принятое решение, по моему мнению, является излишним, когда все, что вы хотите сделать - принудительно перезагрузить изображение в браузере;)
Изменить 2: Упрощенное предлагаемое решение.

Попробуйте следующее:

if (!$this->upload->do_upload())
{
    $error = array('errors' => $this->upload->display_errors("<li>","</li>"));
    $this->load->view('index', $error);
}else{
    $data['PROFILE_DETAILS'] = $profile;
    $this->load->view('index', $data);
}

и затем отобразите ошибки в вашем представлении следующим образом:

<?php if($errors): ?>
   <ul><?php print $errors ?></ul>
<?php endif; ?>

и посмотрите, какие ошибки вы получаете.

 Mavelo15 июл. 2017 г., 20:05
@ Vicky, потому что изображения и страницы кэшируются независимо. Посмотрите мое решение выше о том, как предотвратить кэширование изображений в вашем шаблоне;)
 Vicky24 янв. 2011 г., 13:27
Я не получаю никакой ошибки, моя проблема связана с chache. Файл успешно загружен в папку сервера, но вновь загруженный файл не отображается на теге img подтверждения страницы

Ваш ответ на вопрос