Answer the question
In order to leave comments, you need to log in
How to write js event to db?
Hello, tell me please, I want to wrap an ad block in the smarty template to track the clicks made from the site, like this
<div class=“a-ad-container”>
<script>
$('.google-ad-container').click(function (event) {
Рекламный скрипт
});
</script>
{/literal}{ip_user}{literal}
Answer the question
In order to leave comments, you need to log in
Alternatively:
<div class=“google-ad-container”>someHTML...</div>
<script>
var google_ad_click = 0; //объявляете переменную, в которую будете считать клики
$('.google-ad-container').click(function (event) {
google_ad_click = google_ad_click + 1; //считаете клики
});
setInterval(function () {
var data = new FormData();
data.append('google_ad_click_tratata', google_ad_click);
$.ajax({ //отправляем все это дело на сервер
type: "POST",
url: "АДРЕСОБРАБОТЧИКАВСТАВИТЬСВОЙ.php",
data: data,
cache: false,
processData: false, // NEEDED, DON'T OMIT THIS
contentType: false, // NEEDED, DON'T OMIT THIS (requires jQuery 1.6+)
dataType: 'json',
success: function(respond){ //если ajax отправился нормально
google_ad_click = 0; //обнуляем счетчик кликов, чтобы начал считаться снова
console.log(JSON.stringify(respond)); //если вы что-то выводите на сервере, вывести это на консоль на клиенте
}
,error: function(xhr, status, error) //если ajax НЕ отправился нормально
{
console.log('ajaxError xhr:', xhr); //выводим ошибки в консоль
console.log('ajaxError status:', status);
console.log('ajaxError error:', error);
}
});
}, 30000); //проворачиваем это дело каждые пол минуты
</script>
if ($_POST['google_ad_click_tratata'])
if (is_numeric($_POST['google_ad_click_tratata']))
{
$addclicks = $_POST['google_ad_click_tratata'];
//А дальше - добавляем значение addclicks к нужному полю в вашей БД
}
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question