语法错误意外T_ELSE

时间:2012-12-08 10:24:03

标签: php

我一直在检查此代码,试图查找此错误的原因。这是说意外的T_ELSE,它指向代码中的最后一个。有人可以指出我的错误。非常感谢

<?php

    error_reporting(E_ALL);

// AFTER SUCCESSFUL QUERY
if (mysql_num_rows() == 0)
{
    echo '<div class="no-rec">No Record Found !</div>';
}
else
{
    while ($row = mysql_fetch_assoc($rsd))
    {
        $ticket  = $row['ticket_frm'];
        $rowdate = date("d/m/Y",strtotime($row['date_frm']));
        $id      = $row['id_frm'];
        $from    = $row['from_frm'];
        $subject = $row['subject_frm'];
        $message = $row['message_frm'];

        $myString = <<<ENDMYSTRING
          <div class="each_rec">
          <div class="record blue" data-message="$message" data-subject="$subject" data-rowdate="$rowdate" data-from="$from">
          <img src="images/sml_new_mail_icon.gif" class="mailIcon" alt="" /><span class="iconSubject">$subject</span>
          <div class="rowdate">$rowdate</div>
          <span class="mailFrom">$from</span>
          </div>
          <br />
ENDMYSTRING;
          echo $myString;
    }
}

else

{

  echo 'you must enter a ticket#';

    //$sql = "select * from contact_frm";
    //var_dump(mysql_error());
}
?>

4 个答案:

答案 0 :(得分:3)

if (mysql_num_rows() == 0) {

} else {
    ^ maybe here you could put elseif()
} else {
   // or just remove this else
}

答案 1 :(得分:1)

是的,你已经有了if(mysql_num_rows()== 0)测试的其他内容,就在你之前;然后你为“必须提供的票”提供另一个其他的

也许你的意思是

elseif (mysql_num_rows() >= 1)
在while循环之前

答案 2 :(得分:1)

您的语句似乎是if-else-else。我不知道任何语言的有效性: - )

您需要重新考虑您的逻辑或语言元素的使用。

在这里进行一些明智的猜测(我意识到这充满了危险),你正在检查前面返回的行这一事实似乎表明else块表示没有输入票号应该有在此之前很久就完成了。

所以这可能是一个'cut'n'paste错误,或者您已将if-else插入错误的位置,或者您错过了另一个if之前的那个trueelse区块。

我要做的第一件事就是完全摆脱第二个{{1}}位,然后从那里开始。

然后,如果存在逻辑问题,请在此处发布另一个问题并将其解除。

答案 3 :(得分:0)

这里你添加了两个else子句。