Как сделать счетчик просмотров изображения на PHP

123 4
UL
На сайте с 04.08.2013
Offline
68
426
Подскажите пжл, кто с опытом, как лучше написать счетчик просмотров изображения?
LEOnidUKG
На сайте с 25.11.2006
Offline
1638
#1
✅ Трастовых площадок под размещение статей и ссылок. Опыт 14 лет! ( https://searchengines.guru/ru/forum/675690 ) ⭐ Купить вечные трастовые ссылки для сайта ( https://getmanylinks.ru/?srh ) ⭐ Ускорение ваших сайтов (WP, Opencart и др.) + Настройка сервера ( https://searchengines.guru/ru/forum/997205 )
UL
На сайте с 04.08.2013
Offline
68
#2

А чиста на пхп это сделать возможно?

Хотя на ajax видимо даже проще, но все же...

E
На сайте с 01.10.2017
Offline
46
#3

Если речь о "просмотре" именно изображения, а не страницы с изображением, то только так (при выводе изображения):

$link->query("UPDATE `{$table('images')}` SET `count`=`count`+1 WHERE `id`='{$page['id']}'");
($page['id'] - это фактически $image['id'].)
skapunker
На сайте с 15.01.2014
Offline
190
#4
use_linux #:
проще, но все же...

записывай get запросы к изображенийям и считай их, вот и вся логика

и доступ к азображениям через скрипт, будет типа того

site.ru/index.php?img=image.jpg

Мои сайты ищут дно. Я больше не СЕО гуру... Я ухожу в отставку. Однако, я по прежнему царь вебмастеринга.
E
На сайте с 01.10.2017
Offline
46
#5
skapunker #:

и доступ к азображениям через скрипт, будет типа того

site.ru/index.php?img=image.jpg

Это вовсе не обязательно. В современных сайтах не принято показывать в адресе имя файла-обработчика 😉

Т.е. адрес может быть обычным, например /images/image.jpg

UL
На сайте с 04.08.2013
Offline
68
#6
estic #:

Если речь о "просмотре" именно изображения, а не страницы с изображением, то только так (при выводе изображения):

($page['id'] - это фактически $image['id'].)

С точки зрения производительности наверное дороговато может обойтись. Но способ хорош.

Алеандр
На сайте с 08.12.2010
Offline
151
#7
use_linux :
Подскажите пжл, кто с опытом, как лучше написать счетчик просмотров изображения?
По адресу картинки должна вызываться не картинка, а скрипт php. Собственно, который сначала берет и записывает параметры обращения в файл или базу данных, а затем, берет изображение и выкидывает его в браузер, подставляя правильный mime type.

Решается в несколько строчек кода, часто использую, вот только это не нужно использовать на действительно изображениях, в моем случае это всегда пиксель учета пользователей.
Удобный и качественный хостинг с тестовым периодом: https://okej.ru/ihc/ - домены, SSL-сертификаты, IP-сети и многое другое..
E
На сайте с 01.10.2017
Offline
46
#8
use_linux #:
С точки зрения производительности наверное дороговато может обойтись.

Что дороговато? Инкремент поля в базе данных сделать? 😀 Пусть даже с 1-2 предварительными SELECT-запросами.

Сейчас это основа для для любого счетчика. Не строки/байты лога же в самом деле считать, как кто-то выше написал 😀

E
На сайте с 01.10.2017
Offline
46
#9
Алеандр #:
вот только это не нужно использовать на действительно изображениях
Почему? 😀 Если нужно именно количество обращений к изображению посчитать. Или совместить счетчик доступа к странице, реализуемый при помощи изображения, с показом этого изображения на ней.
Алеандр
На сайте с 08.12.2010
Offline
151
#10
estic #:
Почему? 😀 Если нужно именно количество обращений к изображению посчитать? Или совместить счетчик доступа к странице, реализуемый при помощи изображения, с показом этого изображения на ней.

Потому, что если это вызов картинки-счетчика 1 раз за загрузку страницы,  то никаких проблем дергать такой код. Но, если задача подразумевает под собой учет посещения сотен картинок, находящихся на сайте и грузящихся через скрипт - то нагрузочка будет очень даже значимой, это вам не статику через nginx отдавать.

Именно об этом я и написал в своем сообщении. Счетчик-картинка в данном случае не равно простому изображению на сайте. Если нужно считать обращения непосредственно ко  всем изображениям на сайте, то, как выше и написал товарищ - разумнее будет просто разбирать лог того же nginx и из него фоново дергать в базу количество обращений. Так не будут необдуманно тратиться ресурсы на эту операцию.

123 4

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий