Создание кнопки liked для сайта

Недавно захотелось сделать кнопочку «Мне нравится» для комментариев на одном из сайтов. Конечно, ничего сложного в этом нет, однако, необходимо так же владеть и JS, который все больше и больше начинает вписываться в жизнь вебмастеров-программистов.
Поэтому я решил описать способ реализации кнопочки liked, как и всегда пишем с нуля.

И так у нас есть функция которая выводит комментарии к нашим постам/новостям, дергает их она по уникальному id новости, по такому же принципу мы и будем привязывать кнопочку «Мне нравится» только к уникальному айди комментария.

В блоке с комментариями достаточно разместить вот такую кнопку
<div class="like" id="Тут id комментария"></div>


Давайте набросаем немного стилей для кнопки, чтобы было более понятно.
<style>
.like {padding:5px 15px;background:#DDD;border-radius:5px;border:1px solid black}
</style>


Теперь на нужно создать в базе данных таблицу, которая будет хранить в себе айди комментария.
Заходим в phpmyadmin и создаем таблицу like
в ней создаем 2 поля, уникальный id записи и id комментария
CREATE TABLE IF NOT EXISTS `like` (
  `id` int(11) NOT NULL auto_increment,
  `id_comm` int(11) default NULL,
  PRIMARY KEY  (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 ;

Далее нем нужно подготовить php функцию которая будет записывать данные в таблицу like

Создайте файл к примеру like.php
В нем размещаем функцию (к базе данных я думаю вы подключитесь сами, так как каждая CMS имеет свое подключение, возможно есть какой то стандартный код CMS)

function like()
{
    //$_POST['id'] - будем передавать js уникальный айди комментария
    /* Пишем SQL запрос вида
    INSERT INTO like (`id`, `id_comm`) VALUE ('', $_POST['id']);
    
    */
    die('ok'); // если запрос выполнился то пишем ответ для JS
}


Теперь необходимо написать JS функцию которая будет обрабатывать клик по кнопке и отправлять пост запрос в функцию.
$(function(){
    like();
});
function liked() {
    $('.like').click(_like);
}
function _like()
{
    var $me = $(this);
    var id = $me.attr('id'); // id

    var $val = $('.like[id="'+id+'"]');
        $.post('http://site.ru/like.php',{id:id},function(data){
            if(data === 'ok')
            {
                val = 'Ваш голос записан!';
                $val.html(val);
            }
        });

    return false;
}


Вот собственно и все.

Уже целую неделю стоит жара, многие очень плохо переносят жаркое лето и вынуждены как от оставаться в тени дома или быть на пляже, но тем кто работает в помещении не просто жарко, но и душно. Для этого существуют кондиционеры их списак вы сможете увидите перейдя по ссылке http://www.kievkomfort.com.ua/split_systems/MITSUBISHI%20HEAVY_SRK40HG-S%20SRC40HG-S.php цены более чем приемлемые и к тому же сама установка кондиционера бесплатна!

0 комментариев

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.