Как выйти из SELECT COUNT (*) и создать таблицу - PullRequest
0 голосов
/ 08 мая 2020

Я новичок в работе с PHP и WordPress. Я попытался изучить, как убежать и дезинфицировать, и по пути немного запутался.

Я хотел бы вывести содержимое всей таблицы из базы данных. Я не уверен, есть ли лучший способ создания таблицы более структурированным способом, и я не могу понять, как избежать данных, если я не выбираю определенные c данные из базы данных. Может я просто запутался. Любая помощь или указатели приветствуются.

Я нашел код где-то на Stack Overflow, немного отредактировал и попытался понять его. Теперь я понимаю, но я все еще не понимаю, где go отсюда.

    <?php
$results = $wpdb->get_results( "SELECT * FROM user"); // Query to fetch data from database table and storing in $results
if(!empty($results))                        // Checking if $results have some values or not
{
    echo "<table width='100%' border='0' id='userTable'>"; // Adding <table> and <tbody> tag outside foreach loop so that it wont create again and again
    echo "<tbody>";
    echo "<tr>";                           // Adding rows of table inside foreach loop
    echo "<th>E-mail</th>"  . "<th>Fornavn</th>" . "<th>Efternavn</th>" . "<th>Registreret den</th>";
    echo "</tr>";
    foreach($results as $row){              //putting the user_ip field value in variable to use it later in update query
    echo "<td colspan='3'><hr size='2'></td>";
    echo "<tr>";
    echo "<td>" . esc_attr($row->email) . "</td>" . "<td>" . $row->firstname . "</td>" . "<td>" . $row->lastname . "</td>" . "<td>" . $row->signuptime . "</td>";   //fetching data from user_ip field
    }
    echo "</tbody>";
    echo "</table>";

}

?>

1 Ответ

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

Эта часть ...

foreach($results as $row){              
    //putting the user_ip field value in variable to use it later in update query
    echo "<td colspan='3'><hr size='2'></td>";
    echo "<tr>";
    echo "<td>" . esc_attr($row->email) . "</td>" . "<td>" . $row->firstname . "</td>" 
    . "<td>" . $row->lastname . "</td>" . "<td>" . $row->signuptime . "</td>";   
   //fetching data from user_ip field
}

... будет производить html как

{3 columns}{content}{3 columns end}{row start}
{column start}{content}{column end} * 4

{3 columns}{row start}
{column start}{content}{column end} * 4

{3 columns}{row start}
{column start}{content}{column end} * 4

et c

Что вы хотите в вашем l oop, вероятно:

{row start}{4 columns}{content}{4 columns end}{row end}
{row start}{column start}{content}{column end} * 4{row end}

, который будет выглядеть так:

foreach($results as $row){              
    //putting the user_ip field value in variable to use it later in update query
    echo "<tr><td colspan='4'><hr size='2'></td></tr>";
    echo "<tr><td>" . esc_attr($row->email) . "</td>" . "<td>" . $row->firstname . " 
    </td><td>" . $row->lastname . "</td>" . "<td>" . $row->signuptime . "</td></tr>";   
   //fetching data from user_ip field
}

В вашем SQL -запись в первой строке: SELECT * FROM user, все поля возвращаются в массив $results объектов. Если вы хотите указать, какие поля возвращаются, вы просто включаете их вместо из *, например SELECT id, email, firstname, lastname FROM user

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...