繁体   English   中英

表输出PHP和MySQL没有得到结果

[英]table output php and mysql not getting result

我有以下几点:我得到的结果是附加的图像。 我希望用户名只列出一次,然后再列出,这在整个页面上都是松散的。 每个结果都不行。

在此处输入图片说明

$sql_events = mysql_query("SELECT * FROM weekpicks ORDER BY 'username' asc ")
or die (mysql_error()); 
        while ($row = mysql_fetch_array($sql_events)) {
    $username = $row["username"];
    $week = $row["win_loose"] ;

   $row_color = ($row_count++ % 2 == 0 ? $color1 : $color2);
    echo '<tr style="background-color: '.$row_color.';">';
    echo '<td style="width: 100" align="center"><font size="2">'.$username.'</td>';
    echo '<td style="width: 50" align="center"><font size="2">'.$week.'</td>';
    echo '<td style="width: 50" align="center"><font size="2">'.$week.'</td>';
    echo '<td style="width: 50" align="center"><font size="2">'.$week.'</td>';
    echo '<td style="width: 50" align="center"><font size="2">'.$week.'</td>';

您必须更新代码。 您正在正确查询,但以错误的方式获取数据。 您必须尝试使用​​关联数组来解决您的问题。 请尝试以下代码-

$sql_events = mysql_query("SELECT * FROM weekpicks ORDER BY 'username' asc ") or die (mysql_error()); 

while ($row = mysql_fetch_array($sql_events)) {
    $username[$row["username"]][] = $row["win_loose"];
}

foreach($username as $key=>$val){
    echo '<td style="width: 100" align="center"><font size="2">'.$username.'</td>';
    foreach($val as $value){
        echo '<td style="width: 50" align="center"><font size="2">'.$value.'</td>';
    }
}

还有一点要提,在每个表列上都使用内联css不是一个好习惯。 您可以使用一个类,然后将css添加到该类所附的css文件中。

希望能帮助到你...:)

您正在预告您尚无数据的周。 这个想法是,只要每周引用同一个用户,就打印一个单元格:

$sql_events = mysql_query("SELECT * FROM weekpicks ORDER BY username asc ")
        or die(mysql_error());

$current_username = null;
while ($row = mysql_fetch_array($sql_events)) {
    $username = $row["username"];    
    //User changed
    if ($current_username == null || $current_username != $username) {        
        if ($current_username != null) {
            echo '</tr>'; //Had another user before so end the row
        }
        $row_color = ($row_count++ % 2 == 0 ? $color1 : $color2);       
        echo '<tr style="background-color: ' . $row_color . ';">';
        echo '<td style="width: 100" align="center"><font size="2">' . $username . '</td>';
        $current_username = $username;
    }    
    $week = $row["win_loose"];
    echo '<td style="width: 50" align="center"><font size="2">' . $week . '</td>';
}
echo '</tr>';

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM