麻烦与ajax.Shouldnt这项工作?

时间:2011-06-08 21:10:20

标签: php jquery ajax

你能看到任何可能导致其失效的事吗?

我有一个MYSQL连接,变量是对的。我脑子里有<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>。下一步是什么?

javascript:

function ratePost(id) {
    $.ajax({type: "POST", url: "ajax.php?action=ratePost"});
}


ajax.php?action=ratePost:

$postID = $_POST['postID'];
$rating = $_POST['rating'];
mysql_query("INSERT INTO userpostratings (postID, rating) VALUES ($postID, $rating)");


<a href="#" alt="+ (Up Vote)" class="vote" onclick="ratePost('postID=<?=$post['id'] ?>', rating=<?=$post['rating']?>, <?=$post['id'] ?>);return false;" rel="nofollow" title="Up vote this post">+</a>

非常希望你能帮助一个菜鸟

4 个答案:

答案 0 :(得分:2)

看起来你的ratePost需要更多的参数,以及利用这些参数。此外,链接的onclick似乎存在语法错误。

onclick =“ratePost('postID = [id from php]',rating = [来自php的评级],[id from php]); return false;”

rating = [来自php的评级]应该是'rating = [来自php的评级]。

 function ratePost(id,rating) {
    $.post("ajax.php?action=ratePost", {postID: id, rating: rating}, function(data){alert(data+" return val"); });
    } 

   <a href="#" alt="+ (Up Vote)" class="vote"  onclick="ratePost('<?=$post['id'] ?>', '<?=$post['rating'] ?>');return false;">+</a>

答案 1 :(得分:1)

您需要将数据发送到ajax调用。

以下是jquery docs的示例:

$.ajax({
   type: "POST",
   url: "some.php",
   data: "name=John&location=Boston", // this line is important
 });

答案 2 :(得分:0)

您实际上并未向该网址发布任何内容,因此$postID$rating可能为null或未定义,或者PHP处理该内容。

以下是您可能正在寻找的语法:

$.ajax({
   type: "POST",
   url: "ajax.php?action=ratePost",
   data: //Content Here
 });

答案 3 :(得分:0)

用于jquery帖子

function ratePost(idVal,ratingVal) {
$.post("ajax.php?action=ratePost", {rating: idVal, postID: ratingVal}, function(data){alert(data+" return val"); });
}

<a href="#" alt="+ (Up Vote)" class="vote" onclick="ratePost('<?php echo $post['id']; ?>','<?php echo $post['rating']; ?>');return false;" rel="nofollow" title="Up vote this post">+</a>