PHP解析错误:语法错误,意外的T

我看了很多其他问题,但我无法找到自己的答案。 这是我的语法错误(未展开的T_IF):

while(($rij1 = mysql_fetch_object($result1))
and( if ($voornaam=NULL) {
            $rij2 = ' ';}
elseif($voornaam!=NULL){
            $rij2 = mysql_fetch_object($result2);})

我在语法之前查看了行,但是我找不到错在哪里......有人知道吗?


尝试重写你的代码:

while ($rij1 = mysql_fetch_object($result1))
{
    if ($voornaam === NULL) 
    {
        $rij2 = ' ';
    } 
    else
    {
        $rij2 = mysql_fetch_object($result2);
    }
}

编辑:纠正你的条件在第一个if ,因为@andrewsi spotted - =是一个赋值操作符,所以之前你的代码将$voornaam改为NULL ,然后检查结果是否为true (当然,它永远不会)所以第二个块总是会执行)

在你原来的代码中,你使用的是and运算符 - 大概看到它在一些很好的意义上使用,但是编码不好的例子,比如mysql_connect(...) or die('an error occurred');

这个例子中发生的事情是,检查第一条语句mysql_connect()的结果。 如果它的计算结果为true,那么第二个语句从不执行,但如果它的计算结果为false,那么第二个语句 - die('an error occurred'); - 执行。 正如你刚发现的那样,这种模式很混乱,并且最好避免。

链接地址: http://www.djcxy.com/p/12015.html

上一篇: PHP Parse error: syntax error, unexpected T

下一篇: IF/ELSE to echo image in PHP