Показать таблицу из MySQL без необходимости кодировать каждое имя столбца - PullRequest
0 голосов
/ 26 мая 2020

Ради моей страницы администратора я пытаюсь просто показать содержимое таблицы из базы данных MYSQL. Однако я не хочу подготавливать HTML для каждой таблицы, которую хочу показать, поэтому я получил этот скрипт из одного из сообщений здесь, в stackoverflow.

Он работает нормально, однако он всегда пропускает первая запись из любой таблицы, какие-либо предложения, как это исправить?

function display_data($data) {
$output = '<table>';
foreach($data as $key => $var) {
    $output .= '<tr>';
    foreach($var as $k => $v) {
        if ($key === 0) {
            $output .= '<td><strong>' . $k . '</strong></td>';
        } else {
            $output .= '<td>' . $v . '</td>';
        }
    }
    $output .= '</tr>';
}
$output .= '</table>';
echo $output;

}

$ data поступает из ассоциативного массива после выборки таблицы и помещения ее в ассоциативный массив.

Это то, что входит в массив:

Array ( [0] => Array ( [id] => 1 [email] => ppronin@gmail.com [login] => ppronin@gmail.com [phone] => 77059907777 [password] => $2y$12$amBi4JClzNjOFspBCdi8Vu3o/ETGUdHZKOLKkZDpQkFhs7T0/LOTO [active] => 0 [date_create] => 2020-03-26 15:43:42 [family_name] => Пронин [name] => Павел [role] => 9 [estatus] => 1 ) [1] => Array ( [id] => 2 [email] => ppronin@ikeen.com [login] => ppronin@ikeen.com [phone] => 7059907777 [password] => $2y$12$on7Z4L2nv9l28qjG/9FA3eZqI7NvjTRuySUJelWWo1/J2i4t9uWka [active] => 0 [date_create] => 2020-05-20 11:19:14 [family_name] => Пронин2 [name] => Павел2 [role] => 0 [estatus]

Но это то, что он показывает

enter image description here

Как вы может увидеть, что первая запись опущена. Заранее спасибо, я искал в Google, но не смог найти жизнеспособного решения, извините.

1 Ответ

0 голосов
/ 26 мая 2020

Обнаружено, что используйте, если у вас такая же проблема, решение от Axel Arnold Bangert - Herzogenrath 201

function display_data($data) {
    $output = "<table class='table'>";
    foreach($data as $key => $var) {
        //$output .= '<tr>';
        if($key===0) {
            $output .= '<tr>';
            foreach($var as $col => $val) {
                $output .= "<td>" . $col . '</td>';
            }
            $output .= '</tr>';
            foreach($var as $col => $val) {
                $output .= '<td>' . $val . '</td>';
            }
            $output .= '</tr>';
        }
        else {
            $output .= '<tr>';
            foreach($var as $col => $val) {
                $output .= '<td>' . $val . '</td>';
            }
            $output .= '</tr>';
        }
    }
    $output .= '</table>';
    echo $output;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...