到目前为止,我试图限制用户多次喜欢某个帖子。问题是,当我单击某个帖子上的“喜欢”时,每次单击链接时,“喜欢”计数都会增加,即使该链接仅限于一个。
这是user.php文件:
echo "<a href='likes.php?id=$row[0]'>$row[6]</a>";
“ id = $ row [0]”指示数据库中的id_post列。 “ $ row [6]”是数据库中显示相似计数的列。
这是likes.php文件:
<?php
include 'db.php';
connect();
$id = $_GET['id'];
$sql1 = "SELECT * FROM posts";
$result1 = mysqli_query($link, $sql1) or die(mysqli_error($link));
$row = mysqli_fetch_row($result);
if ($row[6] == 0) {
$sql2 = "UPDATE posts SET likes = likes + 1 WHERE id_post = '$id'";
$result2 = mysqli_query($link, $sql2) or die(mysqli_error($link));
}
if ($row[6] == 1) {
exit(header("Location: user.php"));
}
header("Location: user.php");
?>
我的代码有什么问题?
最佳答案
SELECT * FROM posts
您的查询是从posts表中选择所有行,而不是根据$ id变量中的ID进行过滤。
尝试将查询更改为:
SELECT * FROM posts WHERE COLUMN_NAME = '$id'
这样,$ row [6]将在您的帖子表中引用正确的ID。
关于php - PHP-类似帖子的限制不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44120976/