我正在尝试创建一个喜欢/不喜欢的系统,用户可以在其中对视频提供反馈。该系统可以工作,但是用户对喜欢或不喜欢的次数没有限制。
我考虑制作一个表格来检查哪个用户喜欢哪个视频。我已经有两张表,一张用于视频,另一张用于用户。我想知道这是否是一个好主意,或者是否有更好的方法来解决这个问题。
<?php
session_start();
include "config.php";
if(isset($_POST["submitted"])){
mysqli_query($link, "UPDATE video SET likes = likes + 1 WHERE (v_id = '$vid')");
};
?>
<br>
<form method="post">
<input type="hidden" name="submitted">
<button type="submit">Like</button>
</form>
下面是 mySQL 代码,
CREATE TABLE users (
id INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
username VARCHAR(50) NOT NULL UNIQUE,
password VARCHAR(100) NOT NULL,
created_at DATETIME DEFAULT CURRENT_TIMESTAMP
);
CREATE TABLE video(
v_id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
video_name VARCHAR(225) NOT NULL,
id INT NOT NULL,
FOREIGN KEY user_id(id)
REFERENCES users(id)
ON DELETE CASCADE,
n_views INT,
likes INT,
dislikes INT,
image_name VARCHAR(225) NOT NILL
);
最佳答案
简单方法(可以绕过)
写一个cookie。并在投票时检查。
可靠的方式
记录用户和视频的每一次喜欢/不喜欢。投票时检查是否存在。
关于php - 如何限制用户反馈?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55148408/