2013-05-02 69 views
1

我一直在寻找这个解释,但找不到一个。php变量未被正确填充

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

现在作为我的PHP页面:

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

的,如果标签被完美地完成。这让我相信,当值为NULL和空值时,值正确存储到变量中。 现在至于其他标签,它出错了。通常它应该收集价值并将其存储到$ price中。就像我以前收集的每个其他值(但与其他类型存储在数据库中一样) 但是当我去检查我的网站页面时,没有任何价值!

当我放置:

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

它显示正确的结果。

这不会是一个大问题,如果它是不是事实,我需要的变量在其他地方再次,不希望继续一遍又一遍写mysql_result短语...

任何人都可以请解释为什么它不能正确使用变量?也许给我一个关于如何使它与变量一起工作的解决方案?

我的道歉,如果这已被回答之前。我环顾了一会儿,但找不到任何答案。

+1

冒着无益的风险,您应该为新代码使用PDO。 mysql_函数已被弃用且不受支持 – fullybaked 2013-05-02 08:59:46

+0

或使用MySQLi函数 – Raptor 2013-05-02 09:00:18

回答

2

看代码。

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

将始终评估为真。您正在为“$ EHprijs”分配“”而不是进行比较

+0

OMG! >。<多么愚蠢。感谢您选择错误!这解决了它!在网站允许的情况下,我会接受这个答案 – freyate 2013-05-02 09:04:37

+0

@Tjipr:尼斯接龙兄弟 – Roger 2013-05-02 09:17:31

+0

这种情况发生在每个人身上,偶尔会发生:) – Tjirp 2013-05-02 10:23:32

1

发生这种情况是因为值存储在另一个变量中,然后是您正在检查的变量。 更改$price$EHprijs

$EHprijs = mysql_result($rows, $tel, "EHprijs"); 
+0

糟糕!其实它是EHprijs无处不在,但想用$价格来使它成为英语。它与此无关。我要编辑我的问题。 – freyate 2013-05-02 09:02:19

+0

感谢您的帮助! – freyate 2013-05-02 09:08:53