我在我的网站上做了一个学校项目的时事通讯。
它工作正常,电子邮件将出现在我的数据库时,我键入。但我有个错误:
警告: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));
}
}
?>
3条答案
按热度按时间mwngjboj1#
改变
$numRows=mysqli_num_rows($sql);
至$numRows= $sql->mysqli_num_rows();
jbose2ul2#
您需要在select查询中添加空格:
这可能是因为它无法识别查询并抛出错误,我假设$mysqli是在连接文件“connect\u db.php”中定义的连接对象。
希望这有帮助。
vjrehmav3#
如果分配给$sql的select查询失败,$numrows=mysqli\u num\u行($sql);语句将失败。在调用mysqli\u num\u rows()之前,请尝试处理select中的任何潜在错误