使用PHP插入表单值


Using PHP to insert form values

所以我有一个网站,用户可以在上面共享内容。我想在用户帖子中添加一个点赞按钮。最聪明/最干净的方法是什么?

现在,我知道我可以使用一个带有两个隐藏表单字段的提交按钮,这些字段的值包含海报的帖子id和用户id。然后,我只需要使用$_SESSION['id']将其插入LIKES表中的新行中。现在,这不是很有效。我的意思是,这一切都有效,但我想这样做,它会在页面和数据库中立即更新。它的逻辑过程是什么?有人能引导我朝着正确的方向去学习吗?它是javascript吗?ajax

我认为用户是指拥有活动会话的注册用户

老实说,我知道最好的方法是ajax,正如@DarkXphenomenon所建议的那样,但我不知道如何做到,所以我将把我的方法放在纯php中。

<?php
    if (is_int($_POST['postnumber'])) {
        mysqli_query($connected,"INSERT INTO likes (userid, postid)
        VALUES ('".mysqli_real_escape_string($connected,$_SESSION['userid'])."',".$_POST['postnumber'].")");
        echo "Liked";
    } else {
?>
<form>
    <input type="hidden" name="postnumber" value="3456">
    <input type="submit" value="Like">
</form>
<?php
    }
?>

注意:$connected应该是一个链接,如mysqli_real_escape_string()和mysqli_query()中所示

附言,我不知道你还想实现什么。当你点击一篇文章时(只有第一次提交),这个代码会显示"赞",而不是提交按钮。使用它,你可以试着思考如何为几个帖子调整代码,如何计算每个帖子的点赞总数,如果你想在鼠标悬停在哪个用户喜欢它的时候显示,添加删除点赞的功能,任何你想要的。这取决于你。