Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/278.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php “插入查询生成”;警告:mysqli_num_rows()要求参数1为mysqli_结果,布尔值为“给定”;_Php_Mysqli_Insert - Fatal编程技术网

Php “插入查询生成”;警告:mysqli_num_rows()要求参数1为mysqli_结果,布尔值为“给定”;

Php “插入查询生成”;警告:mysqli_num_rows()要求参数1为mysqli_结果,布尔值为“给定”;,php,mysqli,insert,Php,Mysqli,Insert,我对收到以下消息的原因感到困惑: mysqli_num_rows()期望参数1为mysqli_结果,给定布尔值 此问题与以前的查询不同,因为我的查询实际上执行正确(值确实输入了数据库)。所以,我希望MySQL返回一个结果集,而不是BOOLIAN 下面是我的功能: function join_main_newsletter($firstName = null, $email) { global $dbc; $valuesEntered = "values entered&

我对收到以下消息的原因感到困惑:

mysqli_num_rows()期望参数1为mysqli_结果,给定布尔值

此问题与以前的查询不同,因为我的查询实际上执行正确(值确实输入了数据库)。所以,我希望MySQL返回一个结果集,而不是BOOLIAN

下面是我的功能:

function join_main_newsletter($firstName = null, $email)
{
    global $dbc;
    $valuesEntered = "values entered";

    $insert = "INSERT INTO newsletter (first_name, email ) VALUES ('name', 'testemail@yahoo.com')";

    $R3 = mysqli_query($dbc, $insert) or trigger_error("Query Failed! SQL: $sql - Error: " . mysqli_error(db_conx), E_USER_ERROR);
    if (mysqli_num_rows($R3) == 1) {
        return $valueentered;
    } else {
    }
}
[valuesEntered] => values entered
    [insert] => INSERT INTO newsletter (first_name, email ) 
                  VALUES ('name', 'testemail@yahoo.com')
    [R3] => 1
下面是错误的部分结果:

function join_main_newsletter($firstName = null, $email)
{
    global $dbc;
    $valuesEntered = "values entered";

    $insert = "INSERT INTO newsletter (first_name, email ) VALUES ('name', 'testemail@yahoo.com')";

    $R3 = mysqli_query($dbc, $insert) or trigger_error("Query Failed! SQL: $sql - Error: " . mysqli_error(db_conx), E_USER_ERROR);
    if (mysqli_num_rows($R3) == 1) {
        return $valueentered;
    } else {
    }
}
[valuesEntered] => values entered
    [insert] => INSERT INTO newsletter (first_name, email ) 
                  VALUES ('name', 'testemail@yahoo.com')
    [R3] => 1
mysqli\u num\u rows()
函数返回结果集中的行数。对于insert、update和delete use

use-受上次insert、update、REPLACE或delete查询影响的行数

  mysql_num_rows ( resource $result )
从结果集中检索行数。此命令仅对返回实际结果集的SELECT或SHOW等语句有效。要检索受INSERT、UPDATE、REPLACE或DELETE查询影响的行数,请使用<代码>mysql\u受影响的\u行() 像


这是不同的。我的疑问是有效的;i、 e值正在输入数据库。所以,我的问题没有错,原因可能是什么?结果应该是什么?如果
mysqli\u num\u rows()
首先失败,因为它是一个
INSERT
,而不是一个
SELECT
,那么您的代码就没有任何帮助。