PHP / MySQL:根据多个列阻止插入

时间:2014-08-11 22:07:09

标签: php mysql duplicates insert-update

当用户连接到某个网页时,我会在MySQL中插入他的IP地址和连接的日期时间。

由于我没有得到的原因,我经常在同一时间为相同的IP地址插入2或3次。

此外,如果用户在30分钟内再次打开网页,我不想添加新的MySQL行(我认为这是用户的同一次访问)。

如果至少在半小时的范围内没有记录他的IP地址,是否可以只插入用户?

以下是我使用的简单请求:

INSERT INTO connex VALUES ('','".$ip."','".$datetime."')

这就是它在MySQL(id / ip / datetime)中的样子:

83 | 66.249.81.57 | 2014-08-11 23:52:21
84 | 66.249.81.57 | 2014-08-11 23:52:21
85 | 66.249.81.57 | 2014-08-11 23:52:21

谢谢。

1 个答案:

答案 0 :(得分:2)

制作一个像

这样的选择语句
SELECT ip FROM connex WHERE ip = $ip AND datetime > DATE_SUB(NOW(), INTERVAL 30 MINUTE)

并检查您是否收到此请求的结果。