PHP - исключить текущий адрес электронной почты из уникальной проверки - PullRequest
0 голосов
/ 17 мая 2019

У меня проблемы с обновлением данных в CRUD, потому что я определил проверку электронной почты для проверки всех электронных писем из баз данных.

Код, который я написал для проверки электронной почты:

    $sql = "INSERT INTO reg (first_name, last_name, email, phone, address) VALUES (?, ?, ?, ?, ?)";

     $email = mysqli_real_escape_string($conn, $_POST['email']);

     $user_check_query = "SELECT * FROM reg WHERE email='$email' LIMIT 1";
        $results = mysqli_query($conn, $user_check_query);
        $user = mysqli_fetch_assoc($results);

            if ($user['email'] === $email) {

             $emailerr="Email Already Exists";



             }

        else{

    if($stmt = mysqli_prepare($conn, $sql)){

        mysqli_stmt_bind_param($stmt, "sssss", $param_fname,$param_lname, $param_email,$param_phone, $param_address);


        $param_fname = $first_name;
        $param_lname = $last_name;
        $param_email = $email;
        $param_phone = $phone;
        $param_address = $address;

        if(mysqli_stmt_execute($stmt)){
            header("location:index.php");
            exit();
        } else{
            echo "Something went wrong. Please try again later.";
        }
    }


    mysqli_stmt_close($stmt);
}

Я только что получил данные из базы данных на основе 'ID', но когда я нажимаю на кнопку обновления, он проверяет текущий адрес электронной почты. Все, что я только, чтобы проверить другие электронные письма из баз данных, за исключением текущего электронного письма.

1 Ответ

0 голосов
/ 20 мая 2019

Вы уверены, что этот подход будет работать, если вы просто хотите проверить, есть ли электронная почта или нет, вы можете использовать счетчик.если число> 0, то электронная почта уже существует, вам не нужно

if ($user['email'] === $email) {

         $emailerr="Email Already Exists";
}

, вы уже проверили электронную почту в запросе SQL, нет необходимости проверять снова.Надеюсь, это поможет

...