вопрос
Использую в новостях систему лайков - Только 'Нравится'.
Сейчас при нажатии на лайк, рейтинг добавляется на 1 значение, а при повторном нажатии выводит "Вы уже выставили свою оценку для данной статьи".
Как сделать, чтобы повторное нажатие убирало лайк, как будто его и не ставили?
Сейчас при нажатии на лайк, рейтинг добавляется на 1 значение, а при повторном нажатии выводит "Вы уже выставили свою оценку для данной статьи".
Как сделать, чтобы повторное нажатие убирало лайк, как будто его и не ставили?
Файл: ajax/rating.php
Заменить
На
Заменить
$db->close();
echo "{\"error\":true, \"errorinfo\":\"{$lang['rating_error2']}\"}";
die();
На
$db->query( "UPDATE " . PREFIX . "_post_extras SET rating=rating-'{$go_rate}', vote_num=vote_num-1 WHERE news_id ='{$news_id}'" );
$db->query( "DELETE FROM " . PREFIX . "_logs WHERE news_id ='{$news_id}' AND {$where}" );
if ( $config['allow_alt_url'] AND !$config['seo_type'] ) $cprefix = "full_"; else $cprefix = "full_".$news_id;
clear_cache( array( 'news_', $cprefix ) );
$db->close();