我正在使用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>
每位用户都应该只有一次点击向上投票图标。 非常感谢你提前。
答案 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,这意味着用户尚未对该帖子进行投票,而且他现在可以投票。否则,用户已经对该帖子进行了投票,他无法再次投票。