首页 > 解决方案 > 修复 ODBC 行数

问题描述

我有通过 ODBC 在线显示玩家的脚本。

我希望它显示结果暴露的每行的数量,但是,我该怎么做。

这是代码

<?php

error_reporting(0);
ini_set("display_error", false); 

include("config/odbc.conf.php");

$odbc_char_con = odbc_connect($odbc['data_cha'],$odbc['user'],$odbc['pass']) or die("Verbinndung zum ODBC Server fehlgeschlagen,bitte zu einem sp�teren zeitpunkt erneut probieren.");
$odbc_acc_con = odbc_connect($odbc['data_acc'],$odbc['user'],$odbc['pass']) or die("Verbinndung zum ODBC Server fehlgeschlagen,bitte zu einem sp�teren zeitpunkt erneut probieren.");


echo "<center>Player Online List<br>";

echo "<table border='1'>
    <tr>
        <td align='center'>Char.Name</td>
        <td align='center'>Level</td>
        <td align='center'>Class</td>
    </tr>";

$result1 = odbc_exec($odbc_acc_con,"SELECT user_no FROM account.dbo.USER_PROFILE WHERE login_flag = '1100'");

$classes = array('0' => "Azure Knight", '1' => "Segita Hunter", '2' => "Incar Magician", '3' => "Vicious Summoner", '4' => "Segnale", '5' => "Bagi Warrior");  

while(odbc_fetch_row($result1)) {
    
    $user_no = odbc_result($result1,1);

    $result2 = odbc_exec($odbc_char_con,"SELECT character_name,wLevel,byPCClass FROM character.dbo.user_character WHERE user_no = '".$user_no."' ORDER by login_time DESC");
    $name = odbc_result($result2,1);
    $level = odbc_result($result2,2);
    $class = odbc_result($result2,3);

    if(!preg_match("/[[GM]]/i",$name)) {

        echo "<tr>
            <td align='center'>".$name."</td>
            <td align='center'>".$level."</td>
            <td align='center'>".$classes[$class]."</td>
        </tr>";

    }

}
odbc_close($odbc_char_con);
odbc_close($odbc_acc_con);

echo "</table></center>";

?>

它显示了所有 Char.Name 级别类

但没有像我希望的那样显示每行的数量

1 Char.Name Level Class 2 Char.Name Level Class 等

标签: phpsql-serverodbc

解决方案


推荐阅读