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

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

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

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

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

Войти через центр авторизации
Похожие вопросы
16 мая 2024, в 23:36
200000 руб./за проект
16 мая 2024, в 23:10
12000 руб./за проект