我尝试制作一个表,并用MySql DB和foreach中的数据填充单元格:
<div class="single mb-5 mt-5">
<thead>
<tr>
<th data-sort="string">Titre <i class="fa fa-sort"></i></th>
<th data-sort="string">Genre <i class="fa fa-sort"></i></th>
<th data-sort="string">Date de sortie <i class="fa fa-sort"></i></th>
<th data-sort="string">Casting <i class="fa fa-sort"></i></th>
</tr>
</thead>
<?php foreach($movie->getMovies() as $m) { ?>
<tbody>
<tr>
<td><a href="?p=single&id=<?php echo $m['id']; ?>" class="card-link"><?php echo $m['title']; ?></a></td>
<td><?php echo $m['genres']; ?></td>
<td><?php echo $m['release_date']; ?></td>
<td><?php echo $m['release_date']; ?></td>
</tr>
</tbody>
</table>
<?php } ?>
<script>
$(document).ready(function($) {
$("#movie_list").stupidtable();
});
</script>
结果如下:
有足够的数据可以包含21个表行,但是只有一个。
你能告诉我我想念什么吗?
答案 0 :(得分:0)
您只需要循环表行而不循环表体,请将foreach循环更改为此:
<tbody>
<?php foreach($movie->getMovies() as $m): ?>
<tr>
<td><a href="?p=single&id=<?php echo $m['id']; ?>" class="card-link"><?php echo $m['title']; ?></a></td>
<td><?php echo $m['genres']; ?></td>
<td><?php echo $m['release_date']; ?></td>
<td><?php echo $m['release_date']; ?></td>
</tr>
<?php endforeach; ?>
</tbody>
</table>
答案 1 :(得分:0)
这是因为您弄乱了表结构,已将Docker
添加到了循环中。当第一个循环运行时,它将关闭Tomcat
,而<tbody>
的其余数据将失去结构。
答案 2 :(得分:0)
while语句对我有用:
<?php
$check = "SELEC * FROM table_name";
$execute = mysqli_query($connection, $check);
$i = 0;
while($row = mysqli_fetch_array($elements)) {
$title = $row['title'];
$genres = $row['genres'];
$releaseDate = $row['release_date'];
$releaseDate = $row['release_date'];
$i++;
?>
<tbody>
<tr>
<td><a href="?p=single&id=<?php echo $m['id']; ?>" class="card-link"><?php echo $m['title']; ?></a></td>
<td><?php echo $m['genres']; ?></td>
<td><?php echo $m['release_date']; ?></td>
<td><?php echo $m['release_date']; ?></td>
</tr>
</tbody>
<?php } ?>