如何比较两个MySQL查询中的值

时间:2014-11-12 21:50:27

标签: php html mysql pdo

我有这个团队页面,其中包含团队成员列表和包含我朋友列表的选择列表。从选择列表中,您可以选择要添加到团队的成员(成员)。现在,我想确保已经是团队成员的朋友不会出现在选择列表中。

我尝试了以下但是在选择列表中没有显示任何内容,它应该显示一个不属于团队成员的朋友的详细信息。

代码

    <form action="tmembers.php" method="post">
        <select multiple="true" name="members[]"  val id="member" class="">    
        <?php
        while($record5 = $stmt5->fetch()){    //Gets ids from my friend list
            $friends[] = $record5['id'];      //array containing ids of friends
        }
        $membersarray[] = $members['id'];     //array containing ids of team members

        foreach ($friends AS $t) {
            if (in_array($t, $membersarray)) {
               continue;            
            } 
        ?>

        <option value="<?php echo $record5['id'] ; ?>">  
            <?php echo $record5['surname'];?> <?php echo $record5['firstname'] ; ?>  
        </option>

        <?php } // end-foreach
        ?>

        </select>
        </br>
        <input type="submit" value="Send Invite" name="invite" class=""/>
   </form>

1 个答案:

答案 0 :(得分:0)

您在while循环之外使用$record5变量。

我假设$members['id']是要添加到$membersarray[]的ID。如果它本身就是一个数组,那么您应该在$membersarray[0]内使用foreach

试试这个:

<form action="tmembers.php" method="post">
    <select multiple="true" name="members[]"  val id="member" class="">    
    <?php
    while($record5 = $stmt5->fetch()){    //Gets ids from my friend list
        $friends[] = $record5;            //array containing ids of friends
    }
    $membersarray[] = $members['id'];     //array containing ids of team members

    foreach ($friends AS $t) {
        if (in_array($t['id'], $membersarray)) {
           continue;            
        } 
    ?>

    <option value="<?php echo $t['id'] ; ?>">  
        <?php echo $t['surname'];?> <?php echo $t['firstname'] ; ?>  
    </option>

    <?php } // end-foreach
    ?>

    </select>
    </br>
    <input type="submit" value="Send Invite" name="invite" class=""/>
</form>