【问题标题】:Correct way to check if local variable equals local variable检查局部变量是否等于局部变量的正确方法
【发布时间】:2016-05-05 19:01:04
【问题描述】:

即使值应该相等,它也不会计算,它直接进入 else 事件。表列名与数据库匹配,所以...

我需要在 ($recruitcheck==$recruitpass) 中使用某种类型的引号吗?

$recruiter = $_POST["recruiter"];
$recruitpass = $_POST["recruitpass"];
$recruitcheck = mysqli_query($maindb, "select aurapass from auras where auraname='$recruiter'");
if($recruitcheck == $recruitpass) {
    $badgecheck = mysqli_query($maindb, "select recruitbadge from auras where auraname='$recruiter'");
    if($badgecheck == "0") {
        echo "<script>alert('Recruiter information correct, but there is no recruit badge.')</script>";
        exit();
    } else {
        echo "<script>alert('Recruiter badge accepted.')</script>";
        $emailcheck = mysqli_query($maindb, "select * from auras where email='$email'");
        $namecheck = mysqli_query($maindb, "select * from auras where auraname='$auraname'");
        if(mysqli_num_rows($emailcheck) > 0 || mysqli_num_rows($namecheck) > 0){
            echo "<script>alert('New auraname/email is already taken.')</script>";
            exit();
        } else {
            exit();                        
        }
    }
} else {
    echo "<script>alert('Aura information of recruiter is incorrect. Please, use preexisting aura information to confirm recruiter identity.')</script>";
    exit();
}

【问题讨论】:

标签: php function mysqli syntax local-variables


【解决方案1】:

$recruitpass 是一个字符串,而 $recruitcheck 是 mysqli_result 对象。您需要在将其与 $recruitpass 进行比较之前获取对象 inside 的字符串值

【讨论】:

  • 经过一番深入挖掘,我发现 mysqli_fetch_assoc 可以将 mysqli_query 结果存储为字符串。由于它以关联方式存储,因此可以通过 $variable['columnname'] 调用字符串。要进行比较,请检查 $variable['columnname']==$stringvariable。就我而言, $recruitfetch=mysqli_fetch_assoc($recruitcheck); if($recruitfetch['aurapass']==$recruitpass{ 代码有效 }。谢谢大家!
猜你喜欢
  • 1970-01-01
  • 2022-11-29
  • 1970-01-01
  • 2011-03-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-12-07
相关资源
最近更新 更多