在PHP中输出锚类虽然()循环似乎不一致

时间:2010-09-28 18:46:10

标签: php

我在SQL表中有两个字段donecurrent。两者都具有1(是)或0(假)的数据。

在我创建元素的while() PHP循环中,我有以下代码:

$current=mysql_result($result,$i,"current");
$done=mysql_result($result,$i,"done");

if ($done == 1){
$doneorcurrent = "done";
} 

if($current == "1"){
$doneorcurrent = "current";
}else {$doneorcurrent = "";}

然后我使用以下内容致电$doneorcurrent

<a class="article <? echo $doneorcurrent ?>"</a>

问题在于,即使我的done个字段中有一个字段为1,它也永远不会出现。我已经对代码进行了一段时间的研究,一旦我完成了它,所以反过来 - 只有done出现,而不是current

我应该采取更好的方式吗?有关示例,请参阅http://www.bavarianblue.com/to-do-list/。每个任务的标题都包含在一个应包含currentdone的类中。如您所见,其余数据在While()循环中正确输出,因此看起来似乎不对。

1 个答案:

答案 0 :(得分:1)

您的第二个if语句始终将$doneorcurrent设置为"current"""(空)。您可以使用ifelse语句来解决此问题:

if ($done == 1){
  $doneorcurrent = "done";
}elseif($current == "1"){
  $doneorcurrent = "current";
}else {
  $doneorcurrent = "";
}

作为旁注,我并不真正了解您的数据库设计。为什么“完成”和“当前”存储在不同的表中?难道它不只是单个表中单个列中的标志吗?