我的网络应用程序我有一个管理页面,在管理员可以添加新的管理员用户并查看所有管理员用户列表,我的问题如何查询选择所有管理员用户但不显示管理员本身已登录。
到目前为止,这是我的问题:
<div class="container">
<table>
<tr>
<th>admin_id</th><th>Username</th><th>Date Registered</th><th>Added By</th><th>Status</th><th></th>
</tr>
<?php
$sql = "SELECT `admin_id`,`username`,`reg_date`,`added_by`,`status` FROM `admin`";
if($stmt = $db->prepare($sql)) {
if($stmt->execute()) {
$stmt->bind_result($id, $username, $reg_date, $added_by, $status);
while ($stmt->fetch()) {
?> <tr>
<td><?php echo $id; ?></td><td><?php echo $username; ?></td><td><?php echo date('M j, Y', strtotime($reg_date)); ?></td><td><?php echo $added_by; ?></td><td><?php echo $status; ?></td><td><a href="">Deactivate</a></td>
</tr>
<?php
}
}
}
?>
</table>
</div>
我应该在查询中使用Where子句吗?但怎么样?任何帮助?提前谢谢。
答案 0 :(得分:2)
只需添加一个WHERE子句:
$sql = "SELECT `admin_id`,`username`,`reg_date`,`added_by`,`status`
FROM `admin`
WHERE `username` != ?";
if($stmt = $db->prepare($sql)) {
$stmt->bind_param('s', $variable_containing_the_logged_in_username); // Change this variable to match wherever you have the info
if($stmt->execute()) {
$stmt->bind_result($id, $username, $reg_date, $added_by, $status);
while ($stmt->fetch()) {
?>
<tr>
<td><?php echo $id; ?></td><td><?php echo $username; ?></td><td><?php echo date('M j, Y', strtotime($reg_date)); ?></td><td><?php echo $added_by; ?></td><td><?php echo $status; ?></td><td><a href="">Deactivate</a></td>
</tr>
<?php
}
}
}