2014-11-05 4 views
0

단어 "true"은 데이터를 가져 오는 데이터베이스에 있지만 if 문은 else로 이동합니다.if statement in PHP

while(odbc_fetch_row($user)){ 
    echo "<div style='position:absolute;overflow:scroll;height:370px;'>"; 
    $name   = odbc_result($user, 'username'); 
    $email  = odbc_result($user, 'email'); 
    $admin  = odbc_result($user, 'admin'); 
    $lastLogin = odbc_result($user, 'lastLogin'); 
    $userDisabled = odbc_result($user, 'disabled'); 
    $fullname  = odbc_result($user, 'firstName') . " " . odbc_result($user, 'lastName'); 

    echo "<br><h2> " . $name . "</h2>"; 
    echo $fullname . "<br>"; 
    echo " " . $email; 
    echo "<br>Last Login Time: <br>" . $lastLogin; 
    echo "<br>"; 

    if($userDisabled == "true"){ 
     echo "<input type='checkbox' class='disableUser' checked id='disableUser'>Disable User<br>"; 
    }else{ 
     echo "<input type='checkbox' class='disableUser' id='disableUser' >Disable User<br>"; 
    } 

    echo "<br>"; 
} 
+0

'위해서 var_dump ($ userDisabled가)' –

+1

는 다음,'위해서 var_dump ($ userDisabled)를'않습니다. "참 [공간]"과 같은 어떤 것이 비교를 포기할 것이다. –

+0

우리는 당신의 덤프를 기다리고 있습니다 .... :) –

답변

0

그래서이 함께 시도 :

if((is_bool($userDisabled) && $userDisabled === TRUE) || (is_string($userDisabled) && strtoupper($userDisabled) == "TRUE") { 
# do your job 
}else { 
# you can eat or sleep :) 
} 
+0

나중에 할 수 있지만 내 코드가 작동하지 않는 이유는 무엇입니까? – ScottC

+0

문자열을 부울 값과 비교하려고했는데 그 값이 올바르지 않기 때문에 –

+0

내 코드가 데이터베이스의 문자열을 가져 오는'$ userDisabled'와 문자열 인 "true"를 비교합니다. 아마도 공백 문자가 문자열이나 무언가의 끝에 저장되는 것을 주석 처리했습니다. – ScottC