好日子我是新的编程,我有一个问题,我想防止重复。我需要在我的代码中添加什么,只是为了防止重复插入数据时(只是在我的表的“名称”)。
if(isset($_POST['text'])){
$text =$_POST['text'];
$sql = "INSERT INTO table_attendance(NAME,TIMEIN) VALUES('$text',NOW())";
if ($conn->query($sql) ===TRUE) {
$_SESSION['success'] = 'Action Done';
}else{
$_SESSION['error'] = $conn->error;
}
header("Location: index.php");
}
$conn->close();
我需要在我的代码中添加什么才能使它不接受相同的名称并防止重复
1条答案
按热度按时间ejk8hzay1#
1.在MySQL中的
name
列上添加一个UNIQUE KEY。1.将您的
INSERT INTO table_attendance...
更改为INSERT IGNORE INTO table_attendance...
。请注意,您的代码目前容易受到SQL注入的影响。
这是非常危险的,请确保在启动实际产品时不要部署这样的代码。
查看更多信息:How does the SQL injection from the "Bobby Tables" XKCD comic work?.