Строка URL-адреса PHP, чтобы избежать кеширования браузера

Мой сайт разработан как забавный сайт для картинок, когда пользователь нажимает случайную кнопку, код PHP на той же странице генерирует новое случайное изображение, так оно и должно работать. Однако мне нужно нажать кнопку F5, чтобы получить новое изображение.

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

Я не очень хорошо разбираюсь в php, поэтому, пожалуйста, говорите так, как будто я знаю только основную структуру веб-страницы. Спасибо!

То, что вы описываете, называется отключением кэша и обычно представляет собой случайную строку или временную метку, прикрепленную к URL-адресу. Когда вы ссылаетесь на свой образ, добавьте его так:

echo get_random_image_url() . '?' . time(); 

Это приведет к тому, что URL-адрес выглядит следующим образом:

http://img.ruphp.com/php/random.jpg?1355862360

Примечание: get_random_image_url – это всего лишь пример, но я уверен, что вы get_random_image_url эту идею.

Этот поток может представлять интерес: как заставить веб-браузер НЕ кэшировать изображения .

я думаю, что использование заголовков лучше, чем трюк URL

 <?php header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1 header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); // Date in the past ?> 

http://php.net/manual/en/function.header.php

Это очень легко решить: например, проверьте следующие две ссылки:

http://img.ruphp.com/php/06_Place_20773_1_Mis.jpg

http://img.ruphp.com/php/06_Place_20773_1_Mis.jpg?randomValue

Обе из этих двух ссылок будут открыты одно и то же изображение.

Это ваше решение! Вы должны добавить в конце вашего имени файла изображения случайное значение:

 image.png?<?php echo someRandom();?> 

Это сообщество или Google, чтобы написать способ, который создает случайные значения.

Также есть решение с использованием javascript , suupose следующие

 <img id="funny" src="scripts/php_rand_image.php" /> <a href="javascript:changeImage('funny')">Get another image</a> <script> function changeImage(ob){ image = document.getElementById(ob) d = new Date(); image.src = image.src+'?'+d.getTime(); } </script>