-3
У меня проблема с ajax
. Я хочу сделать простую систему голосов, но у меня есть проблемы с ним:Ajax не связывается с базой данных
<div id="button_up" onclick="vote_plus(1,$id)"></div>
<div id="button_down" onclick="vote_plus(-1,$id)"></div>
votesystem.php
<?php
include 'connection.php';
connection();
$page_id=$_GET['page_id'];
$rate=$_GET['rate'];
mysql_query("UPDATE img SET suma=suma+$rate, ocen=ocen+1 WHERE id=$page_id");
?>
и основные функции:
function vote_plus(rate,page_id)
{
alert('rate='+rate+'id='+page_id);
$.ajax({
url: 'vote_system.php',
type: 'post',
data: {rate:rate, page_id:page_id},
success: function(output)
{
alert('success, server says '+output);
}, error: function()
{
alert('something went wrong, rating failed');
}
});
}
Я пытался сделать это, как на эта ссылка: JavaScript to update MySQL?
Попробуйте это, чтобы отладить - в Chrome, щелкните правой кнопкой мыши на странице -> Проверить элемент -> щелкните вкладку «Сеть» -> Найдите столбец «Имя» -> выполните функцию ajax -> найдите систему ответов .php в столбце «Имя» -> если красный, нажмите на voteystem.php, чтобы узнать ошибку –
Вы отправляете запрос на отправку в javascript, но ожидаете, что параметры в get in php. Pls решает, какой метод вы хотите использовать и придерживаться его! – Shadow
Вероятно, это связано с тем, что вы используете переменные $ _GET в votesystem.php вместо переменных $ _POST. Добавив 'type: 'post'' в ваш запрос ajax, вы поместили параметры в тело http-запроса, к которому обращается через $ _POST – aray12