如何在PHP中输出两个字段?

时间:2010-09-25 19:46:48

标签: php mysql

我有一个包含两个字段的数据库:current和previous。

以下是代码:

                            <?
$username="*****";
$password="*****";
$database="******";

mysql_connect(localhost,$username,$password) or die("Unable to connect to server");
mysql_select_db($database) or die( "Unable to select database");

$query='SELECT * FROM tasks WHERE current=1 OR previous=1';
$result=mysql_query($query);
$num=mysql_num_rows($result); 

mysql_close();

?>

然后输出并按照以下方式操作:

<div class="tasklist">
    <div class="currentProject">
    Current Project:
    </div>
<?
$i=0;

while ($i < $num) {
$title=mysql_result($result,$i,"Title");
$link=mysql_result($result,$i,"Weblink");
$description=mysql_result($result,$i,"Description");
$id=mysql_result($result,$i,"ID");
$howto=mysql_result($result,$i,"howto");
$blogpost=mysql_result($result,$i,"blogpost");
$done=mysql_result($result,$i,"done");
$current=mysql_result($result,$i,"current");
$previous=mysql_result($result,$i,"previous");

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

if ( $previous == 1 ) {
    $previous = "previous";
} else {
    $previous = "";
}

?>

    <div class="<? echo $done ?> task <? echo $id ?>" id="<? echo $current.$previous ?>">
            <div class="titleWrapper">
                <div class="title">
                    <a class="article"  href="<? echo $link ?>"><? echo $title ?></a>
                </div>
            </div>
    </div><BR>

<?
$i++;
}

echo "</div>";


?>

问题是,由于之前在数据库中的当前时间之前,它输出先前的然后输出当前。

问题:

如何确保首先输出current,然后previous

2 个答案:

答案 0 :(得分:1)

不是直接输出它们,而是存储它们,直到你实际拥有它们,然后以正确的顺序输出。

答案 1 :(得分:0)

只需将其附加到您的查询order by previous

只要当前任务注册表具有previous=0且以前的任务注册表具有previous=1,它就必须正常工作。