【发布时间】:2015-04-08 09:02:22
【问题描述】:
数据库中有一个表包含用户名,状态(活动或非活动)。我需要显示一个包含两个组的页面。第一组将用于活动用户,第二组将用于非活动用户。只允许使用一个选择查询。这意味着这两个组没有单独的 SQL 语句。
【问题讨论】:
-
提交你所做的代码。
标签: php
数据库中有一个表包含用户名,状态(活动或非活动)。我需要显示一个包含两个组的页面。第一组将用于活动用户,第二组将用于非活动用户。只允许使用一个选择查询。这意味着这两个组没有单独的 SQL 语句。
【问题讨论】:
标签: php
你可以用'if'来分隔
<?php
$sql = "SELECT * FROM tblUser";
$query = mysql_query($sql);
$result = mysql_fetch_array($query);
foreach($result as $user){
if($user['status'] == 'active'){
//your code here...
}else{
//your code here...
};
};
?>
【讨论】:
您可以做的就是一次将它们全部拉入,然后当您写入页面时,您可以循环两次,一次回显所有活动用户,一次回显所有非活动用户。这将是一个快速而肮脏的解决方案。
编辑:是的,您可以按状态订购,只需一个循环。
只是一个简单的例子(如果你已经订购了它,那么活动是第一个(order by 'status' ASC)):
echo "Active:<br /><ul>";
$current = 'a';
foreach($accounts as $c)
{
// Switch to the inactive list if your current list is still active, and your current item is inactive
if($c->status == "inactive" && $current == 'a'){
echo "</ul><br />Inactive<br /><ul>";
$current = "i";
}
echo "<li>$c->username</li>"
}
【讨论】: