PHP警告:mysqli_num_rows()期望参数1为mysqli_result,布尔值在第31行中给出

时间:2018-05-10 00:20:39

标签: php mysqli

我试图查看“uid'针对student_uid"学生"如果已经有uid匹配,则阻止注册的表。但是它没有工作,我得到以下错误:PHP警告:mysqli_num_rows()期望参数1是mysqli_result,在第31行给出的布尔值。我对php很新,所以我'我很困惑。

这是我的代码:

<?php

if (isset($_POST['submit'])) {

    include_once 'dbh.inc.php';

    $first = mysqli_real_escape_string($conn, $_POST['first']);
    $last = mysqli_real_escape_string($conn, $_POST['last']);
    $email = mysqli_real_escape_string($conn, $_POST['email']);
    $uid = mysqli_real_escape_string($conn, $_POST['uid']);
    $pwd = mysqli_real_escape_string($conn, $_POST['pwd']);

    //Error handlers
    //Check for empty fields
    if (empty($first) || empty($last) || empty($email) || empty($uid) || empty($pwd)) {
        header("Location: ../signup.php?signup=empty");
        exit();
    } else {
        //Check if input characters are valid
        if (!preg_match("/^[a-zA-Z]*$/", $first) || !preg_match("/^[a-zA-Z]*$/", $last)) {
            header("Location: ../signup.php?signup=invalid");
            exit();
        } else {
            //Check if email is valid
            if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
                header("Location: ../signup.php?signup=email");
                exit();
            } else {
                $sql = "SELECT * FROM students WHERE student_uid='uid'";
                $result = mysqli_query($conn, $sql);
                $resultCheck = mysqli_num_rows($result);

                if ($resultCheck > 0) {
                    header("Location: ../signup.php?signup=usertaken");
                    exit();
                } else {
                    //Hashing the password
                    $hashedPwd = password_hash($pwd, PASSWORD_DEFAULT);
                    //Insert the student into the database
                    $sql = "INSERT INTO students (student_first, student_last, student_email, student_uid, student_pwd) VALUES ('$first', '$last', '$email', '$uid', '$hashedPwd');";
                    mysqli_query($conn, $sql);
                    header("Location: ../signup.php?signup=success");
                exit();
                }
            }
        }
    }

} else {
        header("Location: ../signup.php");
        exit();
    }

0 个答案:

没有答案