警告:mysqli \u num \u rows()期望参数1是mysqli \u result,第19行的/customers/4/8/8/web-line.dk/httpd.www/taco/forside.php中给出的对象

g52tjvyc  于 2021-06-23  发布在  Mysql
关注(0)|答案(3)|浏览(307)

我在我的网站上做了一个学校项目的时事通讯。
它工作正常,电子邮件将出现在我的数据库时,我键入。但我有个错误:
警告:mysqli\u num\u rows()期望参数1是mysqli\u result,第19行的/customers/4/8/8/web-line.dk/httpd.www/taco/forside.php中给出的对象
我不知道它要我做什么。
我的代码:

<?php
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);

$email="";

if (isset($_POST['signup-button'])){

include_once "Connect_db.php";

# $name=$_POST['name'];

$email=$_POST['signup-email'];

$sql=mysqli_query($mysqli,"SELECT*FROM newsletter WHERE 
email='$email'");
$numRows=mysqli_num_rows($sql);

if(!$email){
echo "Udfyld email";
}

else if ($numRows > 0){
echo "Email allerede i system!";
}

else {
$sql_insert=mysqli_query($mysqli,"INSERT INTO newsletter (email, 
dateTime)
VALUES ('$email', now())") or die (mysqli_error($mysqli));
}

}

?>
mwngjboj

mwngjboj1#

改变 $numRows=mysqli_num_rows($sql);$numRows= $sql->mysqli_num_rows();

jbose2ul

jbose2ul2#

您需要在select查询中添加空格:

$sql=mysqli_query($mysqli,"SELECT * FROM `newsletter` WHERE `email`='$email'");

这可能是因为它无法识别查询并抛出错误,我假设$mysqli是在连接文件“connect\u db.php”中定义的连接对象。
希望这有帮助。

vjrehmav

vjrehmav3#

如果分配给$sql的select查询失败,$numrows=mysqli\u num\u行($sql);语句将失败。在调用mysqli\u num\u rows()之前,请尝试处理select中的任何潜在错误

相关问题