AbogusGames
Есть элемент, при клике на который должна отправляться функция AJAX
Код (Javascript):
$(document).ready(function() { $(‘#likebtn’).click(function(){ setVote($(this)); }); }); // type — тип голоса. Лайк или дизлайк // element — кнопка, по которой кликнули function setVote(element){ // получение данных из полей var post_id = $(‘#idforpost’).val(); $.ajax({ // метод отправки type: «POST», // путь до скрипта-обработчика url: «includes/likeme.php?id=post_id», // какие данные будут переданы data: { ‘post_id’: post_id, }, // тип передачи данных dataType: «json», // действие, при ответе с сервера success: function(data){ // в случае, когда пришло success. Отработало без ошибок if(data.result == ‘success’){ // Выводим сообщение alert(‘Голос засчитан’); }else{ // вывод сообщения об ошибке alert(‘Произошла ошибка!’); } } }); }Сам элемент
HTML:И скрипт PHP
PHP:
<?php require_once(‘../admin/inc/check.php’); require_once(‘../admin/inc/config.php’); $userlogin = $_COOKIE[‘user’]; $postid = $_GET[‘id’]; // $getlikecount = $mysql->query(«SELECT COUNT(`from`) AS `likecount` FROM `likes` WHERE `from` = ‘$userlogin‘»); $likecount = $getlikecount->fetch_assoc()[‘likecount’]; // Берём значения $all_likes = $mysql->query(«SELECT * FROM `likes` WHERE `from` = ‘$userlogin‘»); $likes = $all_likes->fetch_array(); $mysql->query(«INSERT INTO `likes` (`to`, `from`, `postid`) VALUES(‘$userlogin‘, ‘$userlogin‘, ‘$postid‘)»); $mysql->query(«UPDATE `posts` SET `likes` = ‘$likecount‘ WHERE `userlogin` = ‘$userlogin‘ AND `id` = ‘$postid‘»); $mysql->query(«UPDATE `posts` SET `likes` = ‘$likecount‘ WHERE `userlogin` = ‘$userlogin‘ AND `id` = ‘$postid‘»); } else if($likes != ») { if($likes[‘from’] == $userlogin && $postid == $_GET[‘id’]) { $mysql->query(«DELETE FROM `likes` WHERE `from` = ‘$userlogin‘ AND `postid` = ‘$postid‘»); $mysql->query(«UPDATE `posts` SET `likes` = ‘$likecount‘ WHERE `userlogin` = ‘$userlogin‘ AND `id` = ‘$postid‘»); } } ?>
ADSoft
И? Где вопрос?
ADSoft
для надежности два раза?
AbogusGames
Не отправляется AJAX
— Добавлено —da) спасибо что подсказал, видимо два раза вставил)
mkramer
Что в консоли браузера?
— Добавлено —Кто-то тебя обманул. Так JS переменные в строки не подставляет. https://learn.javascript.ru/string — читаем, и смотрим, как правильно
AbogusGames
хорошо)