PHP - 我希望用户不可能多次upvote

时间:2015-04-30 03:28:19

标签: php mysql sql social-networking social

我正在使用PHP和MySQL开发一个小型社交网络 我希望用户有可能赞成一个帖子,我已经这样做了,但问题是我希望用户能够只投票一次。

这是我的PHP代码:

if (isset($_POST['heart']))
{ 
  $identificateur = $_POST['hide'];
  $Q = "UPDATE posts  SET avis = avis + 1 where id=$identificateur ";
  $bdd->query($Q);
}

这是upvote按钮的形式:

<form action="p.php" method="POST">
        <label><?php 
        if ($avis != 0)
                    {
                        echo $avis; 
                    }
        ?></label>
        <input type="hidden" value="<?php echo "$id" ?>" name="hide">
        <input type="submit" value=" " id="heart" name="heart"> 
</form>

每位用户都应该只有一次点击向上投票图标。 非常感谢你提前。

1 个答案:

答案 0 :(得分:4)

您需要有第二个表格,其中包含两个字段[ ["BWS - Bondi Junction", "Westfield Shopping Centre, 530 Oxford Street", "Bondi Junction NSW 2022", "(02) 8035 9239", "1", -33.8912952, 151.2515329, "","1557", ["27-04-2015 to 03-05-2015","9:00 AM - 10:00 PM","9:00 AM - 10:00 PM","9:00 AM - 10:00 PM","9:00 AM - 10:00 PM","9:00 AM - 10:00 PM","9:00 AM - 10:00 PM","10:00 AM - 10:00 PM"], ["04-05-2015 to 10-05-2015","9:00 AM - 10:00 PM","9:00 AM - 10:00 PM","9:00 AM - 10:00 PM","9:00 AM - 10:00 PM","9:00 AM - 10:00 PM","9:00 AM - 10:00 PM","10:00 AM - 10:00 PM"]]]; post_id。 (voter_id)。post_voter具有包含post表的id的外键,post_id具有user表的外键。此表格指定了用户投票的帖子和帖子的选民。当用户尝试对帖子进行投票时,您必须检查voter_id表,并获取post_voter等于帖子ID和post_id等于用户&的行数#39; s id。如果count = 0,这意味着用户尚未对该帖子进行投票,而且他现在可以投票。否则,用户已经对该帖子进行了投票,他无法再次投票。