我使用下面的代码通过PHP curl函数从其他网站获取数据。一切正常,但是当网站将重新加载或刷新时,我将重复的数据存入数据库中。
duplicate data screenshot
如果数据已经存在于Mysql数据库中,是否有任何基于以下代码的原因为何停止在重装时插入重复数据?我在Google上搜索有关此问题的信息,但未获得任何有用的信息。
if(isset($_POST['url'],$_POST['theme'])){
$db = new Mysqli("localhost" , "iamniloy_wp###" , "(5uSE6[3OP" , "iamniloy_#@");
$url = $db->real_escape_string($_POST['url']);
$theme = $db->real_escape_string($_POST['theme']);
$query = "INSERT INTO twist_data ( url,theme ) VALUES ('$url','$theme')";
$db->query($query);
}
最佳答案
如果由于某种原因无法添加唯一索引,则可以使用EXISTS
检查已存在的记录:
INSERT INTO twist_data (url, theme)
SELECT * FROM (SELECT '$url','$theme') AS tmp
WHERE NOT EXISTS (
SELECT * FROM twist_data WHERE url = '$url' AND theme = '$theme'
)
关于php - MySQL如果数据存在,则不再插入,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42262784/