PHP致命错误:

PHP致命错误:,php,database,mysqli,Php,Database,Mysqli,下面是第66行的一个错误 第66行->if($result->fetch_数组(MYSQLI_NUM)==NULL){ 一切似乎都在按照文件进行 我试图确保插入的电子邮件地址不存在 $_email= $connection-> real_escape_string($email); $checkSql='SELECT * FROM customer_registration WHERE EMAIL='.'"$_email"'.';'; $result= $connection -&g

下面是第66行的一个错误

第66行->
if($result->fetch_数组(MYSQLI_NUM)==NULL){

一切似乎都在按照文件进行

我试图确保插入的电子邮件地址不存在

$_email= $connection-> real_escape_string($email);

$checkSql='SELECT * FROM customer_registration WHERE EMAIL='.'"$_email"'.';';


$result= $connection -> query($checkSql);

//print_r($result);

$sql="INSERT INTO customer_registration(CUSTOMER_FNAME, CUSTOMER_LNAME,      CUSTOMER_DOB, APARTMENT, STREET, CITY, PROVINCE, POSTAL_CODE, EMAIL, PHONE, SIGN_IN_DATE)
    VALUES ('".$fname."','".$lname."',STR_TO_DATE('$dob','%m/%d/%Y'),'".$apt."','".$street."','".$city."','".$province."','".$postalCode."','".$email."','".$phone."',NOW());";


if ($result->fetch_array(MYSQLI_NUM) == NULL) {
    $connection->query($sql);           
    header('../login.php');
} else {            
    header('../index.php');         
}

IF语句由于任何原因都无法通过,我不确定是什么问题。我检查了查询,但IF语句不起作用。

$\u email!=$email
两者都不同将您的查询更改为

$email= $connection-> real_escape_string($email);

$checkSql="SELECT * FROM customer_registration WHERE EMAIL='".$email."'";
或者使用bind语句并使用
num_rows()
检查您的查询返回结果

$stmt = $connection->prepare("SELECT * FROM customer_registration WHERE EMAIL=?");
$stmt->bind_param("s", $email);
$stmt->execute();

$row_cnt = $connection->num_rows;

if ($row_cnt > 0) {
    $connection->query($sql);
    header('../login.php');
}

让我们知道完整错误请提供完整的错误代码,它将告诉您什么是错误的从php复制和过去的完整堆栈跟踪这是因为$result=$connection->query($checkSql);失败并返回false。我没有收到任何错误,它给出了一个空白页,这是一种类型..抱歉..修复了$email=$\u POST['email-from']->这是来自表单的,所以它不重要。查询似乎工作正常。最后的if条件失败并给出一个空白页。我假设$stmt是mysqli类型的对象。是这样吗?PHP致命错误:调用@Saty中boolean上的成员函数bind_param()