2013-08-28 3 views
-1

Мой вопрос, чтобы сэкономить время:Простой способ подсчета кликов с помощью JQuery, MySQL и AJAX

Что это самый простой способ для подсчета кликов кнопки, сохранить это значение в БД Wordpress MySQL и получить, что обновленное общее число в div с Ajax, поэтому страница не нуждается в перезагрузке, чтобы увидеть ее?

Я просто научился погружаться в более славу UX с добавленной поддержкой mysql db и обновлениями Ajax с jQuery в качестве движущей силы.

Мои знания о работе с базами данных в целом ... зеленые, если не сказать больше.

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

OP здесь: Counting clicks with jQuery and displaying with Ajax

+0

Что вы пробовали? Кроме того, почему вы хотите показывать счет на экране в режиме реального времени? Если вам не нужно показывать его в режиме реального времени, Google Analytics является альтернативой. – Raptor

+0

Я хотел бы посчитать клики по определенным элементам (статьям), которые находятся на одной странице. Это значит, что другие пользователи могут видеть, что было прочитано. – canacast

ответ

1

Вы можете связываться с события нажатия данной кнопки, а затем сообщите логику на стороне сервера, чтобы увеличить количество в базе данных, например:

$("#YourButton").click(function() { 
    $.ajax({ 
     url: '/PathToServerSide', 
     type: 'POST', 
     data: {increment: true}, 
     success: function(data) { 
      alert('Server click count updated!') 
     } 
    }); 
} 

Примечание: Никогда доверять стороне клиента, чтобы сообщить стороне сервера, что такое значение счетчика, но вместо этого отправить команду (increment), чтобы сообщить логике на стороне сервера, чтобы увеличить значение в базе данных.

Чтобы отобразить количество кликов, используйте data вернулся из AJAX success обратного вызова и функции JQuery .html(), как это:

$('#YourCounter').html('The button has been clicked ' + data + ' times`); 
+0

отправка команды так же небезопасна, как сообщение счету IMHO – DevZer0

+0

@ DevZer0 - это не проблема безопасности в этом контексте, а проблема параллелизма; где браузер A и браузер B одновременно отправляют одно и то же значение счетчика, и значение базы данных не увеличивается равномерно. Что-то вроде банковского дела, тогда я бы согласился с вашим комментарием. –

+0

Это гораздо проще, чем то, что я пытался! Но это обновление для БД? Я вижу «/ PathToServerSide», но я не уверен относительно того, что это делает до сих пор ... Продолжая учиться! – canacast

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