Как создать таблицу 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>";