Собственная система лайков на PHP и Ajax на сайте, система лайков для сайта
Автор: © web-rubik
2775 Просмотры
1156 Понравилось
Что бы организовать полноценную систему лайков у себя на сайте, нам понадобиться PHP код лайков и библиотека JQuery, что бы всё происходило без перезагрузки страницы.
Для начала PHP код системы лайков для сайта:
<?php $idArt = $row_article[′id′]; $q = "SELECT * FROM article WHERE id=′$idArt′"; $r = mysql_query($q); if (mysql_num_rows($r)>0) { while($row = mysql_fetch_assoc($r)){ $net_vote = $row[′votes_up′]; ?> <div> <span class="votes_count" id="votes_count<?php echo $row[′id′]; ?>"> <?php echo "<span style=′color:#666;′>Понравился материал</span> ".$net_vote; ?> </span> <span class="vote_buttons" id="vote_buttons<?php echo $row[′id′]; ?>"> <a href="javascript:;" class="vote_up" id="<?php echo $row[′id′]; ?>">Vote Up!</a> </span> </div> <?php }} ?>
Теперь давайте разберемся, как разместить данную систему лайков у себя на сайте.
Для начала разместите в область head подключение к нужным библиотекам JQuery и стилям CSS:
<script src="jquery.js" type="text/javascript"></script>
<script src="jquery.pack.js" type="text/javascript"></script>
<script src="jquery.cookies.js" type="text/javascript"></script>
<script src="js/golos.js" type="text/javascript"></script>
Для правильной работы подключения устанавливайте в том же порядке, как и указано выше!
В файле style.css прописан путь до сердечка, иллюстрация которого лежит в отдельной папке сайта images/laik.png и необходимые стили CSS.
Необходимые библиотеки JQuery - jquery.js, jquery.pack.js, jquery.cookies.js.
В файле golos.js находится JavaScript системы голосования.
В ту же директорию где будет установлен скрипт лайков, нужно поместить PHP скрипт обработчик - votes.php и подключение config.php
Коротко о принципе действия системы лайков.
Пользователь нажимает на сердечко, id статьи отправляется в PHP скрипт обработчик, в котором происходит поиск ip адреса пользователя к данной статье в таблице votes_ip. Если такого нет, или дата записи ip адреса к этой статье вчерашняя, будет прибавлен 1 лайк к числу записанных в таблицу с данной статьёй и свежая запись ip адреса в таблицу votes_ip.
В исходниках я положил все необходимые файлы, а так же таблицу MySQL со статьями и необходимыми таблицами, для просмотра как всё работает у Вас на ПК. Так же прокомментировал важные действия в коде, для удобства замены имён, на Ваши.
Просмотреть, как работает - можете поставить лайк к этой статье ниже ;)
На этом у меня всё, если чего не понятно, пишите в комментариях..
14 Комментарии КОТОРЫЕ
Alex
Довольно простой код для внедрения в свой сайт, теперь у меня собственная система лайков на сайте. Спасибо автору!
А можно сделать так, что бы при повторном нажатии на сердечко число лайков возвращалось? К примеру как в Вконтакте.
© web-rubik
Теоретически можно.
Попробуйте заменить текст об успешном голосовании на кнопку с сердечком в файле votes.php
Никита
Вы можете перенести всё на mysqli_query?
© web-rubik
Всмысле перенести на mysqli_query ???
Никита
У меня стоит PHP 7.2, этот скрипт не работает на ней, так как тут используется mysql_query, а мне нужно чтобы этот скрипт поддерживал mysqli_query.
© web-rubik
Там из PHP ток скрипт обработчик и подключение к базе. Перепишите на 7-ку, там не так сложно!
Александр
Здравствуйте!
Установил Ваш скрипт. Выдает ошибку No database selected.
Что я не правильно сделал?
© web-rubik
Если перевести ошибку, получится - "База данных Не выбрана"
Проверьте подключение к базе данных и наличие необходимых граф в таблице где будут записываться лайки.
Александр
Здравствуйте!
Спасибо! Ошибку нашел. База подключилась, но при клике лайки не увеличиваются, пропадает надпись - понравился материал, остаётся сердечко после перезагрузки, появляется надпись - понравился материал, лайки не увеличиваются..
© web-rubik
Смотрите в файле votes php, в нем происходит добавление лайков в базу данных..
Серый
Мда, еще бы написали для полных чайников куда и как эту всю хрень пихать(((
© web-rubik
Так в исходниках всё уже вкручено что куда!
Владимир
Здравствуйте. Скажите пожалуйста, если на странице несколько абзацев и для каждого абзаца нужно организовать лайки, то как для этого приспособить Вашу систему лайков?
© web-rubik
Если обзацы выводятся динамически, то это и есть для этого код, если нет, то для каждого абзаца можно сделать отдельный обработчик и разные классы. Я так делал в новостях лайки к тексту, к фото, к аудио, к видео..
Оставить комментарий
Оставленные комментарии проверяются технической частью интернет портала Web-rubik.ru