Php 如何回显内部联接mysqli查询

Php 如何回显内部联接mysqli查询,php,mysqli,echo,inner-join,Php,Mysqli,Echo,Inner Join,我有两个表共享同一行userid“$u”。表(users)包含关于用户的所有相关信息,表(friends)包含关于user1和user2之间的关系以及已接受或阻止的友谊的信息 我想连接(users)表中“firstname”和“lastname”的行,并将其添加到(friends)表中关系的WHERE条件(user1=“username”或user2=“username”和accepted=“1”) 然后将该查询的结果回显到我的html中的无序列表视图中。我需要关于正确语法的帮助。我正在建立一个

我有两个表共享同一行userid“$u”。表(users)包含关于用户的所有相关信息,表(friends)包含关于user1和user2之间的关系以及已接受或阻止的友谊的信息

我想连接(users)表中“firstname”和“lastname”的行,并将其添加到(friends)表中关系的WHERE条件(user1=“username”或user2=“username”和accepted=“1”)

然后将该查询的结果回显到我的html中的无序列表视图中。我需要关于正确语法的帮助。我正在建立一个社交网络,列出每个用户的“朋友”

我已经大致弄明白了,但它没有输出任何东西…可能是我的语法错误…这就是为什么我在这里发帖寻求帮助

这是我的密码:

<ul data-role="listview" data-autodividers="true">
<?php

include_once("php_includes/db_conx.php");

$sql = "SELECT * FROM users WHERE username='$u' AND activated='1
        INNER JOIN friends on users.id=friends.id 
        WHERE (friends.user1='$u' OR friends.user2='$u' AND friends.accepted='1')";
$query = mysqli_query($db_conx, $sql);
while ($row = mysqli_fetch_array($query, MYSQLI_ASSOC)) {

echo "<li><a href='user.php?u=".$u."'>". $row['firstname']. '&nbsp' .$row['lastname'] ."</a></li>"; 

?>
</ul>

    如果在PHP之外使用,查询是否有效?我不认为这是全部问题,但括号是错误的。它应该是
    WHERE(friends.user1='$u'或friends.user2='$u')和friends.accepted='1'
    。请参阅*不确定“在php之外工作”是什么意思,因为php是mysql数据库上的服务器端代码……一定是php*我修复了括号,但仍然没有输出。只是一个没有数据的列表项?我的意思是手动尝试查询,可以从
    mysql
    CLI程序,也可以使用PhpMyAdmin之类的工具。在担心如何在PHP中格式化之前,请确保它返回您想要的内容。好吧,我发现了我的问题:我没有在数组中循环…呸!谢谢你们的帮助。花了我一整天,但现在我离目标又近了一步!如果在PHP之外使用,查询是否有效?我不认为这是全部问题,但括号是错误的。它应该是
    WHERE(friends.user1='$u'或friends.user2='$u')和friends.accepted='1'
    。请参阅*不确定“在php之外工作”是什么意思,因为php是mysql数据库上的服务器端代码……一定是php*我修复了括号,但仍然没有输出。只是一个没有数据的列表项?我的意思是手动尝试查询,可以从
    mysql
    CLI程序,也可以使用PhpMyAdmin之类的工具。在担心如何在PHP中格式化之前,请确保它返回您想要的内容。好吧,我发现了我的问题:我没有在数组中循环…呸!谢谢你们的帮助。花了我一整天,但现在我离目标又近了一步!