查询作为朋友的所有个人资料照片

时间:2017-12-09 22:17:05

标签: php mysqli

我试图返回&显示来自数据库的所有用户个人资料图像,但仅显示该特定个人资料中的人的朋友。 DB的结构如下:

usersDBstructure

friend_array由,分开 我有以下访问和显示:

<?php
global $con;

$username = $_GET['profile_username'];
$query = mysqli_query($con,"SELECT * FROM users WHERE profile_pic = '$username'");

while ($row = mysqli_fetch_array($query)) {
    $friends = $row['profile_pic']; 
?>
     <div><img src="<?php echo $friends; ?>"></div>
<?php } ?>

我确定它是查询,但是如何更好地进行此查询的任何帮助都会很棒。

三江源。

1 个答案:

答案 0 :(得分:1)

你需要这样的东西:

$query = mysqli_query($con,"SELECT * FROM users WHERE friend_array LIKE '$username,%' OR friend_array LIKE '%,$username,%' OR friend_array LIKE '%,$username'");

您正在寻找成为$username朋友的人,因此您需要与friend_array进行核对。我使用了LIKE因为它使我们更容易搜索逗号分隔的字段(直的=不适用于部分匹配)。我们必须检查3种不同的匹配方式,因为用户名可能是第一个用户名,可能位于列表中间,也可能是最后一个,三者中的每一个都有不同的格式。