0

我似乎使用这个 PHP 代码得到了重复的表条目。每次我点击刷新时,它都会插入我硬编码的内容并打印以前的条目(即使它们的值相同)。

我想知道的是,如果值相同,如何避免重复?我也不希望代码在页面刷新时重复条目。

//insert data entries
mysqli_query ($con, "INSERT IGNORE INTO alarms(Title, Description, DT)
    VALUES('get', 'Agha will eat', '2013-08-05 00:15:12')");

这是打印功能。

//print out data entries
$result = mysqli_query($con,"SELECT * FROM alarms");
while ($row = mysqli_fetch_array($result))
 {
    echo $row['alarmID'] . " <br> " . $row['Title'] . " <br> " . $row['Description'] . " <br> " . $row['DT'];
 }
4

1 回答 1

2

根据您希望唯一的值在表中创建一个UNIQUE约束。alarm

假设对于每一行,您希望TitleDescription三元DT组是唯一的。然后,通过以下方式UNIQUE在表中添加约束-alarm

ALTER TABLE alarm ADD CONSTRAINT uc_alarm UNIQUE (Title, Description, DT)

如果你这样做,那么每当你尝试插入一个与现有行匹配的行时,MySQL 将生成一个错误并拒绝该插入命令TitleDescriptionDT

查看这个简短的教程UNIQUE,了解约束的概述。

于 2013-08-25T04:59:51.990 回答