我在查询中遇到了问题。需要在我的数据库中插入电子邮件,但没有重复。电子邮件输入时用逗号或分号分隔。我保留了到目前为止的代码:
$separador = $_POST['separador'];
$listemails= explode($separador, $_POST['emails']);
$count = count($listemails);
for($i=0; $i < $count; $i++){
$check = $connection -> query("SELECT * FROM emails WHERE email_endereco='$listemails[$i]'") or die($connection -> error);
if($res = $check -> fetch_array(MYSQLI_ASSOC)){
...
}
$result = $connection -> query("INSERT INTO emails VALUES(NULL, '".$listemails[$i]."')") or die($connection -> error);
$lastid = $connection -> insert_id;
$connection -> query("INSERT INTO emails_lists VALUES(NULL,'$lastid','$l')") or die($connetion -> error);
}
我想念我有省略号的地方吗?
已经:D了!我更改了主键数据库中的电子邮件字段,然后更改了代码以使其如此:
for($i=0; $i < $count; $i++){
$str .= "(NULL,'".$listemails[$i]."')".($i < $count - 1 ? "," : "");
}
$result = $connection -> query("INSERT IGNORE INTO emails VALUES ".$str) or die($connection -> error);
在这里,我留下答案,如果我可以帮助别人!