Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/260.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php MSSQL数据库顶部第一、第二、第三行_Php_Sql Server - Fatal编程技术网

Php MSSQL数据库顶部第一、第二、第三行

Php MSSQL数据库顶部第一、第二、第三行,php,sql-server,Php,Sql Server,MSSQL数据库位于第一、第二、第三行顶部。我想让球员成为顶级球员,就像这样: 我现有的上衣现在是这样的: 我的PHP代码如下: <?php day_reset_check(); $ima_topa = mssql_query("Select TOP 10 Name, Class, cLevel,

MSSQL数据库位于第一、第二、第三行顶部。我想让球员成为顶级球员,就像这样:

我现有的上衣现在是这样的:

我的PHP代码如下:

<?php
                                                day_reset_check();
                                                $ima_topa = mssql_query("Select TOP 10 Name, Class, cLevel, ".COLUM_DAY_RR." From Character Order By ".COLUM_DAY_RR." desc, cLevel desc");
                                                $sk_topa = mssql_num_rows($ima_topa);

                                                for($i=0;$i < $sk_topa;++$i) {
                                                    $vieta = $i+1;
                                                    $topo_masyvas = mssql_fetch_array($ima_topa);
                                                    $rase = "$topo_masyvas[Class]";

                                                    if($rase == 0){ $klase ='DW'; }
                                                    if($rase == 1){ $klase ='SM'; }
                                                    if($rase == 2){ $klase ='GM'; }

                                                    if($rase == 16){ $klase ='DK'; }
                                                    if($rase == 17){ $klase ='BK'; }
                                                    if($rase == 18){ $klase ='BM'; }

                                                    if($rase == 32){ $klase ='Elf'; }
                                                    if($rase == 33){ $klase ='ME'; }
                                                    if($rase == 34){ $klase ='HE'; }

                                                    if($rase == 48){ $klase ='MG'; }
                                                    if($rase == 49){ $klase ='DM'; }

                                                    if($rase == 64){ $klase ='DL'; }
                                                    if($rase == 65){ $klase ='LE'; }

                                                    if($rase == 80){ $klase ='SUM'; }
                                                    if($rase == 81){ $klase ='BS'; }
                                                    if($rase == 82){ $klase ='DM'; }

                                                    if($rase == 96){ $klase ='RF'; }
                                                    if($rase == 97){ $klase ='FM'; }

                                                    echo "
                                                    <tr class=\"top_tr\">
                                                        <td width=\"30px\"<td><font color=\"gray\">$vieta.</font></td>
                                                        <td width=\"100px\" align=\"left\" style=\"text-indent: 15px;\"<td><font color=\"gray\">$topo_masyvas[Name]</font></td>
                                                        <td><font color=\"gray\">$klase</font></td>
                                                        <td><font color=\"gray\">$topo_masyvas[cLevel]</font></td>";?>
                                                        <td><font color=\"#C7C7C7\"><?=$topo_masyvas[COLUM_DAY_RR]?></font></td>
                                                    </tr>
                                        <?            
                                                }
                                                ?>


我想从表中取前10行。但前3个需要显示位置1、2、3的图像。还有一些数字,比如在图像中显示。我应该使用什么代码。请帮助我,我真的很困惑…

在您的SQL查询中,您可以添加命令。例如:

$ima_topa = mssql_query("Select TOP 10 ROW_NUMBER() OVER (ORDER BY ".COLUM_DAY_RR." desc, cLevel desc) AS 'Rank', Name, Class, cLevel, ".COLUM_DAY_RR." From Character Order By ".COLUM_DAY_RR." desc, cLevel desc");
if ($topo_masyvas[Rank] == 1) {
    // first place gets gold star
} 
elseif ($topo_masyvas[Rank] == 2) {
    // second place gets silver star
} 
elseif ($topo_masyvas[Rank] == 3) {
    // third place gets bronze star
}
然后在FOR循环中,使用一些条件来处理排名1、2和3不同的结果。例如:

$ima_topa = mssql_query("Select TOP 10 ROW_NUMBER() OVER (ORDER BY ".COLUM_DAY_RR." desc, cLevel desc) AS 'Rank', Name, Class, cLevel, ".COLUM_DAY_RR." From Character Order By ".COLUM_DAY_RR." desc, cLevel desc");
if ($topo_masyvas[Rank] == 1) {
    // first place gets gold star
} 
elseif ($topo_masyvas[Rank] == 2) {
    // second place gets silver star
} 
elseif ($topo_masyvas[Rank] == 3) {
    // third place gets bronze star
}

这是一个PHP问题,而不是SQL问题。您应该相应地重新标记。