插入忽略 - 询问MySQL if语句是否被忽略

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了插入忽略 - 询问MySQL if语句是否被忽略相关的知识,希望对你有一定的参考价值。

我有以下代码,它是在php中将用户添加到数据库的函数的一部分。它将用户添加到数据库。

if($user != '' && $pass != ''){
            $new_name_q = "INSERT IGNORE INTO $db_name (`User`, `Password` ,`Name`, `Medals`, `TextSize`)
                                         VALUES ('$user','$pass','$nameComplete', '000000', '18')";
            $new_name_rs = mysqli_query($connection1,$new_name_q);

            if(!$new_name_rs)
            {
                die("No name added: " . mysql_error());
            }
        }

查询工作正常,我没有任何重复。但是,如果忽略查询,我想向用户发出警告。

答案

这是您需要的代码:

if($user != '' && $pass != ''){
    $new_name_q = "INSERT IGNORE INTO $db_name (`User`, `Password` ,`Name`, `Medals`, `TextSize`)
        VALUES ('$user','$pass','$nameComplete', '000000', '18')";
    $new_name_rs = mysqli_query($connection1,$new_name_q);
    $affected = mysqli_affected_rows($connection1);
    if(!$affected) {
        die("No name added");
    }
}

http://www.php.net/manual/en/mysqli.affected-rows.php

[我假设你已经完成了确保变量已经正确转义的事情]

以上是关于插入忽略 - 询问MySQL if语句是否被忽略的主要内容,如果未能解决你的问题,请参考以下文章

忽略第二个 if 语句

MySql -- 不存在则插入,存在则更新或忽略

如何忽略MySQL中insert语句的连续重复

if语句被忽略[重复]

调用post方法时,密码对应时进入if语句,但是我在if语句中的res被忽略了,为啥?

MySqlDb 在插入忽略语句中抛出操作数应包含 1 列