Как создать таблицу HTML в цикле foreach

Мне нужно создать таблицу HTML, состоящую из трех столбцов: адрес электронной почты, имя, фамилия в моем цикле.

Кто-нибудь может дать подсказку, как я могу начать создавать?

$i=0;
foreach($result as $r) {
  echo "<pre>";
  print_r( $i ." ". $r['aluno_email'] ."". " | ". $r['aluno_nome']
. " " .
$r['aluno_sobrenome'] . " | ". strtolower(trim(($r['aluno_nome'])))."_".strtolower(trim($r['aluno_sobrenome'])));
   echo "<pre>";
    $i++;
}

5 ответов

Создайте таблицу и заголовок таблицы вне цикла.

Заполните тело таблицы в цикле и закройте цикл.

<table>
    <tr>
        <th>Email</th>
        <th>Name</th>
        <th>Last Name</th>
    </tr>
    <?php
    $i = 0;
    foreach ($result as $r) {
        echo "<tr>";
        echo "<td>" . $r['aluno_sobrenome'] . "</td><td>" . strtolower(trim(($r['aluno_nome']))) . "</td><td>" . strtolower(trim($r['aluno_sobrenome'])) . "</td>";
        echo "</tr>";

        $i++;
    }
    ?>
</table>

Перебирая результаты, каждый результат выводит одну строку

echo '<table>';
foreach ($results as $r) {
   echo sprintf('<tr><td>%s</td><td>%s</td><td>%s</td></tr>', $r['email'], $r['name'], $r['last_name']);
}
echo '</table>';

Попробуй это:

<?php 
$i = 0;
echo '<table>';
foreach ($result as $r) {
    echo "<tr><td>{$i}</td><td>{$r['aluno_email'}</td><td>{$r['aluno_nome']}</td></tr>";
    $i++;
}
echo '</table>';

Я обычно начинаю с проверки результатов, затем строю таблицу:

if ($result->num_rows > 0) {
     echo "<table>
           <tr>
               <th>Email</th>
               <th>Name</th>
               <th>LastName</th>
           </tr>";

I run my loop and output as long as I have results:

// output data of each row
     while($row = $result->fetch_assoc()) {
         echo "<tr>
                   <td>" . $row["Email"]. "</td>
                   <td>" . $row["Name"]. "</td>
                   <td>" . $row["LastName"]. "</td>
               </tr>";

     }
     echo "</table>";

Вот как ты это делаешь

 echo "<table>
            <tr><th>Email</th><th>Name</th><th>LastName</th></tr>";

            foreach($result as $val){
                echo "<tr><td>".$val['email']."</td><td>".$val['name']."</td><td>".$val['lastName']."</td><td>"</tr>";
            }
echo "</table>";
Другие вопросы по тегам