Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 数据字段null值返回0_Php_Sql Server - Fatal编程技术网

Php 数据字段null值返回0

Php 数据字段null值返回0,php,sql-server,Php,Sql Server,我在数据库中存储一个单选按钮值,它可以是true、false或NULL。 如果为null或false,则答案为0,即为false。 是否有检查空值的解决方案?我试过使用isset和Empty,但都没有帮助。 数据库为MSSQL,数据类型为bit,用于存储单选按钮的值 <input name="radioVal" type="radio" id="radioVal" value="false" <?PHP if(row['radioVal'] == false )

我在数据库中存储一个单选按钮值,它可以是true、false或NULL。 如果为null或false,则答案为0,即为false。 是否有检查空值的解决方案?我试过使用isset和Empty,但都没有帮助。 数据库为MSSQL,数据类型为bit,用于存储单选按钮的值

<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' "; 
}
?> />
试试看

要检查空值,您可以使用


位列可能表示为
1
0
。使用三重等于检查值和类型。检查
行['radioVal']==1是否为true,
行['radioVal']==0是否为false,
行['radioVal']==null是否为null。

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

我建议使用Enum或类似的方法:

ENUM('false', 'true', 'NULL')
在PHP文件中,您可以

<?PHP
       if(row['radioVal'] == false ) 
          echo "checked='checked' "; 
}
?>

尝试使用
=
操作符,看看是否有效。否则,请尝试一个
var\u dump($row)
并准确查看您正在传递的内容。我已经尝试了var\u dump,它在null上返回int(0):(…mssql server有问题吗?在数据库中,它至少显示为null。我正在努力在SQL server中找到枚举,除了绕过它的方法(CLR)。有参考吗?假设mssql中没有枚举类型(正如您所说,有检查/外键等方法)考虑类似于enum或使用short insted并生成三个值。@Echo我已尝试使用===和0===行['radioVal']返回1 on false返回1 on NULL返回空on true NULL===行['radioVal']false时返回1,true时返回NULL,其中as is\u NULL在所有三种情况下都返回空
ENUM('false', 'true', 'NULL')
<?PHP
       if(row['radioVal'] == false ) 
          echo "checked='checked' "; 
}
?>