Как динамически преобразовать значения строк в имена столбцов в php mysql - PullRequest
0 голосов
/ 30 августа 2018

У меня есть таблица с именем "pivo" со столбцами (ID, имя, курс, оценки). Я хочу преобразовать данные столбца «Имя» в заголовок строки, данные столбца «Курс» в заголовки столбцов и данные столбца «Метки» в данные строки для тех столбцов, которые преобразованы из данных столбца «Курс». Помните, чтобы игнорировать столбец «ID» и его данные в запросе выбора.

Я пробовал это:

// Select Students with their Marks Dynamically

$SelectQuery3 = mysqli_query($connection, "SELECT distinct Course FROM pivo");
$numrows3     = mysqli_num_rows($SelectQuery3);
if ( ! $SelectQuery3)
{
    die ("Sorry, database selection failed1. " . mysqli_connect_error());
}
else if ($numrows3 != 0)
{
    echo "  
        <caption><h3>Students with their Marks Dynamically Head</h3></caption>
        <table border = '1' style = 'border-collapse: collapse;'>
            <thead>
                <tr>
                    <th>Name</th>
        ";
    $Crs = "";
    while ($display3 = mysqli_fetch_array($SelectQuery3))
    {
        $Crs = $display3 [0];
        echo "<th>{$display3 ['0']}</th>";
    }
    echo "
                    <th>Total</th>
                    <th>Average</th>
                </tr>
            </thead>
            <tbody>";

    $SelectQuery4 = mysqli_query($connection, "select `Name`,
                sum(case when `Course` = '$Crs' then `Marks` else 0 end) '$Crs'
                from pivo group by `Name`");
    $numrows4     = mysqli_num_rows($SelectQuery4);
    if ( ! $SelectQuery4)
    {
        die ("Sorry, database selection failed2. " . mysqli_connect_error());
    }
    else if ($numrows4 != 0)
    {
        while ($display4 = mysqli_fetch_array($SelectQuery4))
        {
            echo "
                            <tr>
                                <td>{$display4 ['0']}</td>
                                <td>{$display4 ['1']}</td>
                            </tr>";
        }
    }
    else
    {
        echo "<div class='alert alert-info'> Sorry, no student found yet. </div>";
    }

    echo "          
            </tbody>
        </table>";
}
else
{
    echo "<div class='alert alert-info'> Sorry, no course found yet. </div>";
}

и получите неверный результат.

Кто-то может помочь.

Спасибо.

...