Php 我需要帮助查询我的数据库

Php 我需要帮助查询我的数据库,php,mysql,for-loop,mysqli,Php,Mysql,For Loop,Mysqli,我在这里有个问题。需要在我的数据库中插入电子邮件,但不会重复。电子邮件以逗号或分号分隔。我留下了迄今为止的代码: $separador = $_POST['separador']; $listemails= explode($separador, $_POST['emails']); $count = count($listemails); for($i=0; $i < $count; $i++){ $check = $connection -> query("SELECT

我在这里有个问题。需要在我的数据库中插入电子邮件,但不会重复。电子邮件以逗号或分号分隔。我留下了迄今为止的代码:

$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);
} 
$separador=$\u POST['separador'];
$listemails=explode($separador,$_POST['emails');
$count=计数($listed);
对于($i=0;$i<$count;$i++){
$check=$connection->query(“从电子邮件地址中选择*”$endereco='$listemails[$i]'))或die($connection->error);
如果($res=$check->fetch_数组(MYSQLI_ASSOC)){
...
}
$result=$connection->query(“插入到电子邮件中的值(NULL)”,“$listmails[$i]。”)”)或die($connection->error);
$lastid=$connection->insert\u id;
$connection->query(“插入到电子邮件中列出值(NULL,$lastid',$l'))或die($connetion->error);
} 
我错过了我有省略号的地方吗?

已经有了:D! 我更改了数据库中主键的email字段,然后更改了代码使其成为:

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);
($i=0;$i<$count;$i++)的
{
$str.=“(空,”$listemails[$i]。“)”($i<$count-1?”,“:”);
}
$result=$connection->query(“在电子邮件值中插入忽略”。$str)或die($connection->error);

在这里,我把答案留给我是否能帮助别人

你要找的是“继续”对于数据库中已经存在的电子邮件,它将跳回for循环的顶部。请阅读有关SQL注入和参数的信息。这是一个非常糟糕的方法it@Milney这个问题已经解决了:)您仍然应该认真阅读SQL注入和参数(尤其是在真实网站中使用代码时)