【发布时间】:2016-09-26 20:39:43
【问题描述】:
ajax 有问题。我想做一个简单的投票系统,但我遇到了问题:
<div id="button_up" onclick="vote_plus(1,$id)"></div>
<div id="button_down" onclick="vote_plus(-1,$id)"></div>
投票系统.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 函数 -> 查找 votesystem. php in "Name" column -> 如果红色,点击 votesystem.php 找出错误
-
您在 javascript 中发送一个 post 请求,但期望在 php 中获取参数。请决定您要使用哪种方法并坚持下去!
-
这可能与您在 votesystem.php 中使用 $_GET 变量而不是 $_POST 变量这一事实有关。通过将
type: 'post'添加到您的 ajax 请求中,您将参数放置在通过 $_POST 访问的 http 请求的主体中 -
@ The One and Only ChemistryBlob 我收到此错误:未捕获的 ReferenceError:$ 未定义。我也更改了 get to post 但仍然无法正常工作
-
@JimmyMorrisson 你加载 jQuery 了吗?
标签: javascript php mysql ajax