Счетчик просмотров

Печать RSS
542

P
Автор
Чатланин
0
Подскажите пжл, как можно написать счетчик просмотров изображений?
Я считал/записывал число просмотров в cookie, но видимо не очень хорошая идея.

Господин ПЖ
0
php, данные нужно хранить на сервере, куки хранятся на стороне клиента
Создаешь таблицу записываешь туда id картинки и кол. просмотров, при просмотре плюсуешь счетчик
P
Автор
Чатланин
0
Вантуз-мен,
Если картинка одна:
$file = './photo.jpg';
if (file_exists($file)) {

    $counter = isset($_COOKIE['counter']) ? $_COOKIE['counter'] : 0;
    $counter++;

    setcookie('counter', $counter);
    header('Content-Type: image/jpeg');
    readfile($file);
Я правильно понимаю?
Если просмотры хранить в таблице мускул, многовато запросов получится...

Добавлено через 09:23 сек.
Вантуз-мен, кстати, гуглил этот вопрос, нормального решения на пхп не нашел.
Из последних, в основном на ajax везде сделано. Хотелось бы пхп обойтись.
Изменил: php (15.12.2020 / 00:57)

Господин ПЖ
0
Так тебе нужно общий счётчик просмотров или для конкретного пользователя?
А почему много запросов один просмотр один запрос
P
Автор
Чатланин
0
Вантуз-мен, мне общий счетчик нужно сделать. Для каждого изображения, по одному на странице.

Добавлено через 04:35 сек.
просто для отображения страницы необходимо 6 запросов к БД на пользователя; до 100 челов - 700 запросов. Я не собираюсь покорять многомиллионную аудиторию... но ресурсы = деньги.
Хотя, в моем случае лишние 100 запросов, наверное, погоду не сделают, но по-моему лучше так не делать, чтобы потом не запариваться.
Изменил: php (15.12.2020 / 14:44)
P
Автор
Чатланин
0
Даже не один запрос на просмотр, а минимум два. Поскольку нужно будет записать и вывести результат.
А если get - запросы считать? Или *** полная?
Изменил: php (15.12.2020 / 15:36)

Господин ПЖ
0
Ну не используй тогда mysql, пиши в redis, в файл, в tarantool
Есть много способов
P
Автор
Чатланин
0
Вантуз-мен, в этом и дело. Я и хотел узнать какие есть варианты. Правда, я надеялся обойтись одним пхп без примочек. Спасибо!
Изменил: php (15.12.2020 / 17:41)

Господин ПЖ
0
Храни в файле тогда
file_put_contents($file, ((int) file_get_contents($file)) + 1);

Голубые штаны
0
Не забудьте, что надо учитывать браузерный кеш и надо отключить кеширование изображений. Иначе магии не произойдет.
Стикеры / Теги / Правила / Топ тем / Топ постов / Поиск