PDO объединяет заголовки таблиц с данными - PullRequest
0 голосов
/ 13 октября 2018

Я получаю имена заголовков таблиц базы данных и такие данные:

/* Get column names */
public function get_head($table) 
{
    $this->table = $table;
    $query = $this->conn->prepare("DESCRIBE ".$this->table);
    $query->execute();
    return $query->fetchAll(PDO::FETCH_COLUMN);
}

/* List all users */
public function get_users($table) 
{
    $this->table = $table;
    $query = $this->conn->prepare("SELECT * FROM ".$this->table);
    $query->execute();
    return $query->fetchAll();
}

, и они выводятся так:

<table border=1>

<?php 

// Get headers
$columns = $user->get_head('login');

foreach ($columns as $col) 
{
    echo '<th>'.$col.'</th>';
}

// Get users
$users = $user->get_users('login');

foreach ($users as $user) 
{
    echo '<tr>';
    echo '<td>'.$user['user_id'].'. </td>';
    echo '<td>'.$user['user_name'].'</td>';
    echo '<td>'.$user['email'].'</td>';
    echo '<td>'.$user['password'].'</td>';
    echo '<td>'.$user['role'].'</td>';
    echo '<td>'.$user['last_login_date'].'</td>';
    echo '<td>'.$user['date_created'].'</td>';
    echo '<td>'.$user['status'].'</td>';
    echo '</tr>';
}

?>

Какя могу написать второй foreach для автоматической генерации данных на основе имен, выводимых первым foreach из заголовков таблицы?

1 Ответ

0 голосов
/ 13 октября 2018

В вашем коде, где вы хотите отобразить данные для каждой строки, вы можете foreach() вместо $columns и использовать имя столбца в качестве индекса для ваших пользовательских данных ...

        echo '<tr>';
        foreach ( $columns as $column ) {
            echo '<td>'.$user[$column].'</td>';
        }
        echo '</tr>';
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...