为所需的行输出附加php数组

时间:2017-03-17 04:31:04

标签: php mysql arrays

我正在建立一个由会话ID验证的登录用户的好友列表。我有完整的查询,结果和循环的代码。但是,它发布一个整数(可能是id#?),(因为这是我对select查询的唯一标识条件)而我想要的是输出" firstname"的(用户)表行。和"姓氏"而不是用户ID!

听起来很简单,然而,我缺乏让它发挥作用的知识!所以,在这里,我向编码器世界寻求帮助!非常感谢任何帮助!

这是我的代码:

$ cat f
Header 1|Header 2|Header 3
10000001|10000002|10000003

$ Today_Date=$(date +"%d%m%Y")
$ Target_Dir="something"

$ awk -v DATE="${Today_Date}" -v path="${Target_Dir}" '
          BEGIN{print DATE}1;
          END{print "EOF"NR-1}
 ' f
17032017
Header 1|Header 2|Header 3
10000001|10000002|10000003
EOF1

这是我的HTML代码:

// Get Friend Array 
$sql = "SELECT * FROM users
        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); 
$numrows = mysqli_num_rows($query);  
    while($row = mysqli_fetch_array($query, MYSQLI_ASSOC)){ 
        array_push($my_friends, $row["user2"]); 
        array_push($my_friends, $row["user1"]);
        }

        //remove your id from array 
        $my_friends = array_diff($my_friends, array($u)); 
        //reset the key values 
        $my_friends = array_values($my_friends); 
        mysqli_free_result($query);
        // Loop through $my_friends array and build results
        foreach($my_friends as $friends => $v2);
        $friends .= '<a href="user.php?u='.$v2.'"></a>&nbsp;&nbsp; ';
} 

这是最后一行代码 <ul data-role="listview" data-autodividers="true"> <?php echo "<li>$friends</li>"; ?> </ul> 我试图锻炼。该行的语法应该如何添加($ row [&#34; users.firstname&#34;]和$ row [&#34; users.lastname&#34;])并以某种方式不列出用户&#34 ; $ id#&#34;这是在选择查询中加入(用户)和(朋友)的两个表!

可能我需要一个完全不同的阵列来满足我的需要,如果你知道正确的方法,请告诉我如何做到这一点......谢谢大家!

1 个答案:

答案 0 :(得分:0)

据我所知,您在id中缺少用户row。这个问题是因为php数组不能有两个同名的keys。 改变你的查询有点像下面

$sql = "SELECT *, friends.id as friendsID FROM users
        INNER JOIN friends
        ON users.id = friends.id 
        WHERE (friends.user1='$u' OR friends.user2='$u' AND friends.accepted='1')"; 

现在,您将id' as User Id and friendsID`作为朋友的身份