1

我一直在寻找对此的解释,但找不到。

我正在使用 Mysql 数据库。在我的表中,我有一个名为 unitPrice 的列。它的类型:十进制(10,2) - 无符号

现在至于我的 php 页面:

    $price = mysql_result($rows, $tel, "unitPrice");
    if(is_null($price ) || $price = ""){
           echo " niet ingevuld ";
    }else{
           echo $price ;                                                                             
    }

if-tag 完美完成。这让我相信当涉及 NULL 和空值时,该值已正确存储到变量中。现在至于 else-tag,它出错了。通常它应该收集值并将其存储到 $price 中。就像我之前收集的所有其他值一样(但与其他类型一起存储在数据库中)但是当我去检查我的网站页面时,没有任何价值!

当我放置:

$price = mysql_result($rows, $tel, "unitPrice");
    if(is_null($price) || $price = ""){
           echo " niet ingevuld ";
    }else{
           echo mysql_result($rows, $tel, "unitPrice") ;                                                                             
    }

它正确地显示了结果。

如果不是因为我在其他地方再次需要该变量并且不希望一遍又一遍地编写 mysql_result 短语,这不会是一个大问题......

谁能解释一下为什么它不能与变量一起正常工作?也许给我一个关于如何使它与变量一起工作的解决方案?

如果之前已经回答过,我深表歉意。我环顾了一段时间,但找不到任何答案。

4

2 回答 2

2

看着代码。

if(is_null($EHprijs) || $EHprijs = ""){

将始终评估为真。您将 "" 分配给 $EHprijs 而不是进行比较

于 2013-05-02T09:01:32.967 回答
1

发生这种情况是因为该值存储在与您正在检查的变量不同的变量中。更改$price$EHprijs

$EHprijs = mysql_result($rows, $tel, "EHprijs");
于 2013-05-02T08:59:04.253 回答