'此评论对您有用吗?'按钮PHP Jquery Ajax

时间:2013-04-10 10:04:48

标签: php jquery ajax button review

我正在使用php jquery和ajax构建一个评论系统。我已经为“此评论有用吗?”编写了以下代码。按钮:

<input type='button' value='Yes' onClick = 'myCall()' 
       style='background-color:#556B2F;color:white;padding:2px; cursor:pointer'
       name='help' />
<input type='hidden' id='randomdirectory' value='$g' name='ids'/>

$ g是我分配给评论ID的变量,它存储在数据库中。 ajax脚本是这样的:

<script>

function myCall() {

var ids = $('#randomdirectory').val(); 
var self = this;

    $.ajax({
        url: 'rev.php',
        type: 'POST',

        data: {ids: ids},
         success: function(data) {
        $('#ques1').hide();
    }

    });

}

并且“rev.php”文件中的代码是:

<?php
include 'includes/db.php';

$q = $_POST['ids'];
if ($q != ""){

$result = mysql_query("SELECT * FROM table where id='$q'");

while($row = mysql_fetch_array($result))
  {
  $finalproduct = $row['numberofhelpfulvotes'];
  $finalproduct1 = $finalproduct + 1;


  }


mysql_query("UPDATE table SET numberofhelpfulvotes='$finalproduct1' WHERE id ='$q'");
}

?>

问题是当我在页面上有多个评论时。当您点击任何评论中的任何“是”按钮时,显示的第一个评论会添加投票,而不是单击按钮的实际评论。此外,当在ajax调用之后隐藏按钮和文本时,将隐藏第一个查看按钮和文本,而不是单击按钮的查看。此外,页面底部还会出现黑线。

非常感谢任何解决这些问题的方法。

1 个答案:

答案 0 :(得分:0)

感谢所有回复。我最终这样做对我来说很有效:

<script>

$(function() {  
  $(".button").click(function() {  
     var ids = (this.id);

     $.ajax({
        url: 'rev.php',
        type: 'POST',

        data: {ids: ids},
         success: function(data) {
        $('.' + ids).hide();
    }

    });
  });  
});   


</script>

这是html:

<div class='$g'><font size='2' color='black'>Was this review helpful?</font>&nbsp;<input type='submit' value='Yes' onClick = 'myCall()' style='background-color:#556B2F;color:white;padding:2px; cursor:pointer' name='help' id='$g' class='button' /><input type='hidden' id='randomdirectory' value='$g' name='ids'/>

php保持不变,但我要更新它以使其更安全。