2012-05-14 2 views
0

У кого-нибудь есть идея о том, как я мог бы захватить идентификатор изображения, когда пользователь нажимает кнопку «Следующий/предыдущий» в Fancybox? Мне нравится, как меняется Fancybox в зависимости от размера изображения, поэтому я предпочитаю использовать это в некоторых других галереях, которые я видел. Кто-нибудь успешно сделал это? Сайт находится в PHP.Захват просмотра изображения при щелчке при использовании jquery fancybox

+0

http://stackoverflow.com/faq#howtoask :) – adrien

+0

спасибо, я пройду сейчас. – Scott

ответ

1

Общая идея заключалась бы в «прокси» ваших изображений с помощью PHP-скрипта.

Этот сценарий будет:

  1. добавить 1 к отсчету вид изображения
  2. служит изображение в браузере (вместо того, чтобы служить страницу HTML, как обычно)

Вы бы затем обновить атрибут ваших фотографий srcimg тег:

<img src="mypicture.png"/> 

станет

<img src="view_picture.php?picture=1"/> 

Обратите внимание, что вы должны быть осторожным и не разрешать имя файла в параметре изображения и/или проверить, что с любовью пользователь не пытается увидеть файл, который вы не хотите, чтобы показать его (думаю, view_picture.php? picture = .. /. htpasswd)

+0

Adrien, это сработало отлично. Картинки открыты для публики, и ничего, что я хочу скрыть. Существуют ли какие-либо риски безопасности для этого помимо обычных, таких как SQL-инъекция? – Scott

+1

Да, есть что-то, что вы хотите скрыть: любой файл, который является _not_ в вашей папке с изображениями. Это то, что имел в виду адриен. src = "view_picture.php? view_picture.php" предложит исходный код для загрузки скрипта. Или другие вещи в файловой системе сервера. – pixelistik

+0

Две вещи. Если url - view-picture.php? Pid = 27, и это вызывает файл, который просто берет идентификатор, регистрирует его, а затем добавляет его в тег img src, который повторяется, я все еще уязвим? Во-вторых, внезапно ширина не откроется на fancybox, она установлена ​​в 0, любые идеи? – Scott

0

Рассмотрите возможность использования общего программного обеспечения для анализа веб-сайта, например Piwik. Это даст вам дополнительную информацию о ваших посетителях и их действиях на вашем сайте, а не простой счетчик изображений.

Я запускаю сайт, который использует Fancybox и Piwik, все изображения через Fancybox будут автоматически отображаться в Загрузки раздел отчетов Piwik без дополнительной настройки.

Но вы можете легко настроить его с помощью обратного вызова onComplete Fancybox и Piwik's trackPageView(). См. Piwik Javascript API и Fancybox API.

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