【问题标题】:Having issue in my if condition in my php code我的 php 代码中的 if 条件有问题
【发布时间】:2014-08-18 20:56:43
【问题描述】:

我想做的是当用户单击登录按钮并且输入为空时,它将回显please enter email and password,如果用户输入电子邮件和密码错误,它将回显incorrect email and password

我的问题是当我单击登录按钮并且输入为空时,它会同时回显 please enter email and passwordincorrect email and password

我想回显,如果电子邮件和密码都为空,请输入电子邮件和密码,如果电子邮件或密码之一错误,它应该回显不正确的电子邮件和密码。

<?php

require 'encryption.php';
include_once('database.php');

$db = new Connection();
$db = $db->dbConnect();
$db->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);

$email = $_POST['email'];
$pass = $_POST['password'];

$hash_cost_log2 = 8;
$hash_portable = FALSE;
$hasher = new PasswordHash($hash_cost_log2, $hash_portable);
$hash = '*';

$login = $db->prepare("SELECT user_password FROM tbl_user WHERE user_email= :email");
$login->bindParam(':email', $email, PDO::PARAM_STR);
$login->execute();
$hash = $login->fetchColumn();

    if(empty($email) && empty($pass)){
      echo "Please enter Email and Password";
    }
    if($hasher->CheckPassword($pass, $hash))
    {
        $st = $db->prepare("SELECT * from tbl_user WHERE user_email=? AND user_password=? AND user_active='1'");
        $st->bindParam(1, $email, PDO::PARAM_STR);
        $st->bindParam(2, $hash, PDO::PARAM_STR);
        $st->execute();

        if($st->rowCount() === 1){
            echo "1";
            exit;
        }
    }else{
        echo "Incorrect Email or Password";  
    }  
?>

【问题讨论】:

  • if(empty($email) || empty($pass))如果其中一个为空,则会触发错误。
  • 要么,要么在客户端用JS检查它,然后再传递给PHP。

标签: php mysql sql database pdo


【解决方案1】:

将您的第二个 if 更改为 elseif

【讨论】:

    【解决方案2】:

    基本上是这样的:

    if(empty($email) && empty($pass)){
        echo "Please enter Email and Password";
    } else {
       if ($hasher->CheckPassword($pass, $hash))
             echo "works"
       } else {
             echo "doesn't work"
       }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-03-08
      • 2016-10-15
      • 1970-01-01
      • 2020-08-05
      • 1970-01-01
      • 1970-01-01
      • 2013-05-04
      相关资源
      最近更新 更多