Php 如何显示数据库中与特定用户不是朋友的用户列表

Php 如何显示数据库中与特定用户不是朋友的用户列表,php,mysql,Php,Mysql,我正在尝试构建一个系统来显示与某个特定用户尚未成为朋友的所有用户,以便用户只能查看和添加尚未成为朋友的朋友 但我的问题是,代码只删除添加好友列表中的用户第一个好友,它将显示添加好友列表中已经是其好友的其余好友 if(isset($_SESSION['em'])){ $eml = $_SESSION['em']; $list = "select friend_id,user_id from friend"; $friend = mysqli_query($conn,$li

我正在尝试构建一个系统来显示与某个特定用户尚未成为朋友的所有用户,以便用户只能查看和添加尚未成为朋友的朋友

但我的问题是,代码只删除添加好友列表中的用户第一个好友,它将显示添加好友列表中已经是其好友的其余好友

if(isset($_SESSION['em'])){

    $eml = $_SESSION['em'];
    $list = "select friend_id,user_id from friend";
    $friend = mysqli_query($conn,$list);
    $rowf = mysqli_fetch_assoc($friend);

    $idf = $rowf['friend_id'];
    $id = $rowf['user_id'];

    $query = ("select id,fst,las,uid,pass,email,sts,ocp from Users where email!='$eml' AND  id!='$idf' AND id!='$id'");
    $res = mysqli_query($conn,$query);

    if(mysqli_num_rows($res) > 0){

        while($row = mysqli_fetch_assoc($res)){
            $_SESSION['ids'] = $row['id'];
?>
<table id="list">
<tr>
<td id="id" style=" "><a href=""><?php echo $_SESSION['ids'].'<br>';?></a></td>
<td id="fst" style=""><a href="profile.php?uid=<?php echo $row['uid']; ?>">
<?php echo $row['fst'].'<br>'; ?>
</a></td>
<td id="las" style=""><?php echo $row['las'].'<br>';?></td>
 <td id="uid" style=" "><?php echo $row['uid'].'<br>';?>
<form action="request.php" method="POST">
  <a href="request.php?id=<?php echo $_SESSION['ids']; ?>"><input id="request" type="text" value="ADD" readonly></a></form></td>
<td id="email" style=" width:180px;height:40px;text-align:center;"><?php echo $row['email'].'<br>';?></td>
<td id="sts" style=""><?php echo $row['sts'].'<br>';?></td>
<td id="ocp" style=""><?php echo $row['ocp'].'<br>';?></td>

</tr>
</table>
<?php
 }}}
?>

您的代码有小改动,请在下面尝试。我假设您正在使用会话变量eml,您希望为其获取与他不是朋友的用户。您可能需要更改用户id、朋友id,因为我不确定您指的是哪位朋友

if(isset($_SESSION['em'])){

$eml = $_SESSION['em'];
//$list = "select friend_id,user_id from friend";
//$friend = mysqli_query($conn,$list);
//$rowf = mysqli_fetch_assoc($friend);

//$idf = $rowf['friend_id'];
//$id = $rowf['user_id'];

$query = ("select id,fst,las,uid,pass,email,sts,ocp from Users u where email='$eml' AND  id not in (select friend_id from  friend where user_id=u.id)");
$res = mysqli_query($conn,$query);

if(mysqli_num_rows($res) > 0){

while($row = mysqli_fetch_assoc($res)){
$_SESSION['ids'] = $row['id'];
?>
<table id="list">
<tr>
<td id="id" style=" "><a href=""><?php echo $_SESSION['ids'].'<br>';?></a></td>
<td id="fst" style=""><a href="profile.php?uid=<?php echo $row['uid']; ?>">
<?php echo $row['fst'].'<br>'; ?>
</a></td>
<td id="las" style=""><?php echo $row['las'].'<br>';?></td>
<td id="uid" style=" "><?php echo $row['uid'].'<br>';?>
<form action="request.php" method="POST">
<a href="request.php?id=<?php echo $_SESSION['ids']; ?>"><input id="request" type="text" value="ADD" readonly></a></form></td>
<td id="email" style=" width:180px;height:40px;text-align:center;"><?php echo $row['email'].'<br>';?></td>
<td id="sts" style=""><?php echo $row['sts'].'<br>';?></td>
<td id="ocp" style=""><?php echo $row['ocp'].'<br>';?></td>

</tr>
</table>
<?php
}}}
?>

您的代码有小改动,请在下面尝试。我假设您正在使用会话变量eml,您希望为其获取与他不是朋友的用户。您可能需要更改用户id、朋友id,因为我不确定您指的是哪位朋友

if(isset($_SESSION['em'])){

$eml = $_SESSION['em'];
//$list = "select friend_id,user_id from friend";
//$friend = mysqli_query($conn,$list);
//$rowf = mysqli_fetch_assoc($friend);

//$idf = $rowf['friend_id'];
//$id = $rowf['user_id'];

$query = ("select id,fst,las,uid,pass,email,sts,ocp from Users u where email='$eml' AND  id not in (select friend_id from  friend where user_id=u.id)");
$res = mysqli_query($conn,$query);

if(mysqli_num_rows($res) > 0){

while($row = mysqli_fetch_assoc($res)){
$_SESSION['ids'] = $row['id'];
?>
<table id="list">
<tr>
<td id="id" style=" "><a href=""><?php echo $_SESSION['ids'].'<br>';?></a></td>
<td id="fst" style=""><a href="profile.php?uid=<?php echo $row['uid']; ?>">
<?php echo $row['fst'].'<br>'; ?>
</a></td>
<td id="las" style=""><?php echo $row['las'].'<br>';?></td>
<td id="uid" style=" "><?php echo $row['uid'].'<br>';?>
<form action="request.php" method="POST">
<a href="request.php?id=<?php echo $_SESSION['ids']; ?>"><input id="request" type="text" value="ADD" readonly></a></form></td>
<td id="email" style=" width:180px;height:40px;text-align:center;"><?php echo $row['email'].'<br>';?></td>
<td id="sts" style=""><?php echo $row['sts'].'<br>';?></td>
<td id="ocp" style=""><?php echo $row['ocp'].'<br>';?></td>

</tr>
</table>
<?php
}}}
?>

Sql注入警告向我们显示db模式、示例数据和预期输出。请阅读,这里是学习如何提高问题质量和获得更好答案的好地方。Sql注入警告向我们展示db模式、示例数据和预期输出。请阅读,这里是学习如何提高问题质量和获得更好答案的好地方。