@lemonlimelike

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

Сделал 2 ajax запроса, как их записать в один запрос?
<div class="uk-margin-small-left" id="ajax-click1" data-id="<?php echo $qwe[0]['id']; ?>">
                            <span uk-icon='icon: plus-circle; ratio: 1'  title='Нравится'></span>
                            <span class="click1 uk-text-success uk-text-bold"><?php echo $qwe[0]['lik'] ?></span>
                        </div>
                        <div class="uk-margin-small-left" id="ajax-click2" data-id="<?php echo $qwe[0]['id']; ?>">
                            <span uk-icon='icon: minus-circle; ratio: 1'  title='Не нравится'></span>
                            <span class="click2 uk-text-danger uk-text-bold"><?php echo $qwe[0]['dis'] ?></span>
                        </div>


<script type="text/javascript">
    $(document).on('click', '#ajax-click1', function(){
    var self = this;
    $.ajax({
        url: 'inc/ajax-click1.php',
        method: 'GET',
        dataType : "json",
        data: {
            view_2:$(self).data("id")
        },
        success: function(data) {
             console.log(data);
            $('.click1', self).text(data.lik);
        },
        error: function() {
          console.log([].slice.call(arguments));
        }
        });
return false;
});
</script>


<script type="text/javascript">
    $(document).on('click', '#ajax-click2', function(){
    var self = this;
    $.ajax({
        url: 'inc/ajax-click2.php',
        method: 'GET',
        dataType : "json",
        data: {
            view_2:$(self).data("id")
        },
        success: function(data) {
             console.log(data);
            $('.click2', self).text(data.dis);
        },
        error: function() {
          console.log([].slice.call(arguments));
        }
        });
return false;
});
</script>


И еще один вопрос... Вот кодик с update'ом поля
if(isset($_GET['id'])){
    $sql_1 = "UPDATE video SET view = view + '1' WHERE id = :view_2";
    $stw = $pdo->prepare($sql_1);
    $stw->bindParam(':view_2', $get);
    $stw->execute();
}


Код делает update каждый раз, как захожу/обновляю, а как сделать чтоб учитывался только один просмотр, типа как уникальный. Дайте пару советов.
  • Вопрос задан
  • 298 просмотров
Решения вопроса 1
@BorisKorobkov Куратор тега PHP
Web developer
Сделал 2 ajax запроса, как их записать в один запрос?

Назначить обоим ссылкам одинаковый уникальный class. И $('.КЛАСС').on('click', ...)

как сделать чтоб учитывался только один просмотр, типа как уникальный

Сделать отдельную таблицу с IP (или другим уникальным идентификатором) и сначала проверять по ней, голосовал ли уже этот юзер.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы