php - 我的 MySQLi 不只更新插入吗?我的脚本出了什么问题?

标签 php mysql mysqli

    $check_verified_user = mysqli_query("SELECT * from user_verified where user_mail = '$payer_email'");
    $user_verified = mysqli_fetch_array(mysqli_query($conDB, "SELECT * FROM user_verified where user_mail = '$payer_email'"));

    if(mysqli_num_rows($check_verified_user) > 0) {
        mysqli_query($conDB, "UPDATE user_verified SET total_paid = total_paid + '$payment_amount' where user_mail = '$payer_email'");
    } else {
        mysqli_query($conDB, "INSERT into user_verified (user_mail,total_paid) VALUES ('$payer_email', '$payment_amount')");
    }

我不知道我的脚本出了什么问题,它检查该行是否存在,如果存在则应该更新,但它插入了另一行,我不明白......

最佳答案

尝试一下。

$query = "SELECT * FROM user_verified WHERE user_mail = $payer_email";
$check_verified_user = mysqli_query($conDB, $query);

你基本上没有给它数据库连接,所以它总是返回不大于 0 行。就我个人而言,我总是首先将查询放入其自己的变量中,这将确保您不会忘记 mysqli_query() 函数的参数。它还使其更易于阅读,并允许您在需要时在其他地方使用查询。

关于php - 我的 MySQLi 不只更新插入吗?我的脚本出了什么问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28614422/

相关文章:

php - 检查字段中的数组键是否存在于mongo中

php - 如果条件匹配则应用约束

一段时间后,PHP shell_exec 返回空字符串

php - 无法让 mysqli_result::$fetch_all 工作

php - MySQL选择查询内部连接表,有2个针对不同表的正则表达式

javascript - PHP 新手在将下拉值发布到 MySQL 数据库时遇到问题。我的表格格式也关闭了。任何人都可以对此有所了解吗?

mysql - mysql数据库中的字段作为函数的参数?

MySQL如何选择最接近我的变量的值

mysql - 如何通过zerofill进行mysql分组?

PHP MYSQLI 返回一行而不是多行