4

我在数据库中存储了一个单选按钮值,它可以是真、假或 NULL。在 null 或 false 的情况下,答案是 0,即为 false。有没有检查空值的解决方案?我尝试过使用 isset 和 Empty,但这些都没有帮助。数据库是 MSSQL,数据类型是位来存储单选按钮的值

<input name="radioVal" type="radio" id="radioVal" value="false"
<?PHP
           if(row['radioVal'] == false ) 
              echo "checked='checked' "; 
}
?> />

<input name="radioVal" type="radio" id="radioVal" value="true"
<?PHP
           if(row['radioVal'] == true ) 
              echo "checked='checked' "; 
}
?> />
4

3 回答 3

1

尝试

 if(false === row['radioVal'] ) //or
 if(NULL === row['radioVal'] )

并检查 NULL 你可以检查is_null

 is_null(row['radioVal'])
于 2012-09-11T18:39:17.157 回答
1

位列可能将表示为 a1或 a 0。使用三等号检查值类型。检查是否row['radioVal'] === 1为真,row['radioVal'] === 0是否为假,row['radioVal'] === null是否为空。

于 2012-09-11T18:39:34.980 回答
0

也许您应该在 SQL 数据库中使用另一种数据类型。

我建议 Enum 或类似的东西:

ENUM('false', 'true', 'NULL')

在您的 PHP 文件中,您

<?PHP
       if(row['radioVal'] == false ) 
          echo "checked='checked' "; 
}
?>
于 2012-09-11T18:45:15.880 回答