Php mysql的while循环中的If语句永远不会为true

Php mysql的while循环中的If语句永远不会为true,php,mysql,if-statement,while-loop,Php,Mysql,If Statement,While Loop,我在一个while循环中遇到了if语句的问题。我有一个名为$all_teams的团队数组。假设它包含蓝色团队、红色团队和黄色团队。我还有一个数据库,其中对象被分配给团队 DatabaseID | State | Team | ... 12 Ready Blue 33 Finished Red 65 Ready Blue 我现在尝试运行以下代码: <?php $query = "SELECT DISTINCT *

我在一个while循环中遇到了if语句的问题。我有一个名为$all_teams的团队数组。假设它包含蓝色团队、红色团队和黄色团队。我还有一个数据库,其中对象被分配给团队

DatabaseID | State |  Team | ... 
12           Ready    Blue
33           Finished Red
65           Ready    Blue
我现在尝试运行以下代码:

 <?php
$query = "SELECT DISTINCT * FROM `dmt_objects` WHERE PipelineAndWorkflow = 'RWP WF  Ready for 4Sprint' ORDER BY `Team` DESC  ;";
                        $select_projects = mysql_query($query);
    foreach($all_teams as $team){
        echo '<tr id = '.$team.'><td>'.$team.'</td><td>';
            while($all_objects = mysql_fetch_array($select_projects)){
                if($all_objects['Team'] == $team){
                    echo ''.$all_objects['DatabaseID'].'</br>';
                }
            }
        echo '</td></tr>';

    }
    ?>
国际单项体育联合会

if($all_objects['Team'] == $team)

永远都不是真的。。。为什么?如何解决我的问题?

警告不要使用
mysql\uuz
使用
mysqli\uz
PDO
仔细阅读以下内容:


在每个循环后重置结果集指针(目前忽略您正在使用不推荐的mysql_*函数):-



您是否尝试过在表达式的每一侧打印值,并查看您得到的输出?这在一定程度上只适用于一线队。如果我移动echo“”。$all\u objects['DatabaseID'],则需要将查询结果(可能使用mysql_data_seek)@db579重置。
';在If语句之前,它打印出第一个团队行中的所有ID,只需在If语句之前回显$all_objects['team']和$team即可。你应该可以看到这是怎么回事。为什么mysqli必须使用mysql呢?我也在开发网络和新手。所以我知道的不多。mysql_*函数已经被弃用了。也就是说,它们不再被开发,在未来的php版本中将被删除(从手册页面,PHP7将删除这些函数)。@RohanKhude:我添加了一个官方文档的链接。这是一个非常古老的扩展,超过17年。。。SQL注入易受攻击,它在低级别连接到MySQL服务器。关于这一点,有很多线索。希望我能在我的answear和warning方面帮助您:)但是现在我已经开发了大约50页的php。使用mysql。我如何用mysqlimigrate更新它:)谢谢!有没有一种简单的方法可以从mysql中切换过来?对于很多事情来说都很简单。Mysqli支持参数化查询,切换到参数化查询需要做更多的工作(同时也会降低查询的可读性,并且很难在可用状态下回显失败的查询)。使用mysqli的方式与使用mysql_*函数的方式大致相同,大多数只需更改名称即可。更难更改的主要参数是mysqli_real_escape_string,其中链接标识符成为必需的,并且也成为mysql_real_escape_string中的第一个参数,而不是第二个参数。您没有对mysqli_u给出警告:(:(
if($all_objects['Team'] == $team)
<?php
$query           = "SELECT DISTINCT * FROM `dmt_objects` WHERE PipelineAndWorkflow = 'RWP WF  Ready for 4Sprint' ORDER BY `Team` DESC  ;";
$select_projects = mysql_query($query);
$all_objects     = mysql_fetch_array($select_projects)

foreach($all_teams as $team){
    echo '<tr id = '.$team.'><td>'.$team.'</td><td>';
        foreach($all_objects as $obj)
            if($obj['Team'] == $team){
                echo ''.$obj['DatabaseID'].'</br>';
            }
        }
    echo '</td></tr>';

}
?>
<?php
$query = "SELECT DISTINCT * 
            FROM `dmt_objects` 
            WHERE PipelineAndWorkflow = 'RWP WF  Ready for 4Sprint' 
            AND Team IN ('".implode("','", $all_teams)."')
            ORDER BY `Team` DESC  ;";
if ($select_projects = mysql_query($query))
{
    foreach($all_teams as $team)
    {
        echo "<tr id = '$team'><td>$team</td><td>";
        while($all_objects = mysql_fetch_assoc($select_projects))
        {
            if($all_objects['Team'] == $team)
            {
                echo ''.$all_objects['DatabaseID'].'</br>';
            }
        }
        echo '</td></tr>';
        mysql_data_seek($select_projects, 0);
    }
}
else
{
    die(mysql_error());
}
?>