我有PHP代码,它应该显示保存到我的MSSQL表的行列photo
中的图像名称。某些行的photo
列设置为NULL,而某些行的02.jpg
列中的数据为photo
。如果我使用下面的代码,02.jpg
不会显示,因为它从零开始。我想找到一种方法来检查列是否设置为NULL而不是空,因为空不允许某些图像名称。
这是PHP代码:
$picature2 = "SELECT photo1 FROM used_trailers1 WHERE orderid = $sn";
$query1=mssql_query($picature2, $conn);
$array1=mssql_fetch_assoc($query1);
$picature2=stripslashes($array1['photo1']);
if (empty($picature2['photo1'])){
$picature2= "No Image";
} else {
$picature2=stripslashes($array1['photo1']);
}
如果photo
列设置为NULL,则上面的代码会正确显示“无图像”,但如果photo
列为02lady.jpg
,那么它将无法正常工作,因为它始于零。
以下是我的尝试:
if (IS_NULL($picature2['photo1'])){
到目前为止,如果photo
的列数据为NULL,则无效并且不显示“无图像”。
感谢您的帮助。非常感谢所有帮助。
答案 0 :(得分:1)
if ($picature2['photo1']===null || ctype_space($picature2['photo1'])){
$picature2= "No Image";
}
else {
$picature2=stripslashes($array1['photo1']);
}
答案 1 :(得分:0)
您可以使用php is_null()函数http://us2.php.net/manual/en/function.is-null.php
答案 2 :(得分:0)
您有以下
$picature2=stripslashes($array1['photo1']);
if (empty($picature2['photo1'])){
将photo1
分配给$picature2
,然后检查$picature2['photo1']
哪个$picature2
不是数组。
您应该使用以下
#$picature2=stripslashes($array1['photo1']);
#remove this because if you have NULL and use stripslashes it turns into ""
if($array1['photo1'] === NULL){
$picature2 = "No Image";
}else{
$picature2 = stripslashes($array1['photo1']);
}