2015-12-15 74 views
3

我即將「列出數據庫中的活動用戶」。更改網頁上數據庫的值

我有用戶名,電子郵件,密碼和狀態列。

如果狀態值爲「1」,則用戶可以登錄。這意味着他/她是活躍的。

如果狀態值爲「0」,則用戶無法登錄。因爲他/她不活躍。

我想要的是當我列出的用戶,我想顯示「激活」,而不是「1」和「未激活」,而不是「0」

這裏是我的代碼:

<?php 
$query = $connection->query('SELECT * FROM users'); 
while($r = $query->fetch()) { 
echo "<tr> 
     <td class=\"danger\">$r[id]</td> 
     <td class=\"success\">$r[username]</td> 
     <td class=\"warning\">$r[email]</td> 
     <td class=\"info\">$r[status]</td> 
    </tr>"; 
    } 
?> 

有了這個$r[status]是用戶的狀態1或0.我想只顯示在網頁上(主動/無效),但不改變數據庫中的列值。

+0

在三元運算符 – Rizier123

回答

4

您可以回聲之前添加此代碼。

if ($r['status'] > '0') { 
    $r['status'] = "Active"; 
}else{ 
    $r['status'] = "Deactive"; 
} 

這意味着如果該值大於0,狀態將爲活動狀態,否則狀態將爲非活動狀態。

希望它適合你。

+0

謝謝你看看!它像一個魅力工作! – IDontKnow

+1

它像一個魅力,但你不覺得需要額定值? – Terabyte

1

您可以使用IF/ELSE條件來完成。

嘗試

<?php 

$query = $connection->query('SELECT * FROM users'); 
while($r = $query->fetch()) 
{ 
    if($r['status'] == 1) $r['status'] = 'yes'; 
    if($r['status'] == 0) $r['status'] = 'no'; 

    echo "<tr> 
      <td class=\"danger\">$r[id]</td> 
      <td class=\"success\">$r[username]</td> 
      <td class=\"warning\">$r[email]</td> 
      <td class=\"info\">$r[status]</td> 
     </tr>"; 
} 

?> 
3

您可以使用:

<?php 
$query = $connection->query('SELECT * FROM users'); 
while($r = $query->fetch()) { 
echo "<tr> 
     <td class=\"danger\">$r[id]</td> 
     <td class=\"success\">$r[username]</td> 
     <td class=\"warning\">$r[email]</td> 
     <td class=\"info\">" . ($r['status'] == 1 ? 'Active' : 'Inactive') . "</td> 
    </tr>"; 
    } 
?>