我有一个任务管理器网站,欢迎页面应该有 2 个表:1 个包含未完成的任务,另一个包含已完成的任务。 取而代之的是,它会在我每次添加任务(完成或未完成)时创建一个新表。
我试过将一些表格代码移动到页面的其他部分。
<head>
<title> Welcome!</title>
<meta charset = "UTF-8">
</head>
<body>
<div align = "right" style = " font-size:12px;"><h2>
<p> Welcome <?php echo ' '.$login_session.'<br>'; ?>
<a href = "logout.php"> Log out (<i> out </i>) </a></p></h2>
</div>
<?php $tasks = DBRead($login_session)?>
<h1> List of tasks</h1>
<?php
foreach($tasks as $cl){
date_default_timezone_set('UTC');
$date = date('m/d/Y h:i:s a', time());
$dayoftask = $cl['completed_at'];
if($dayoftask < $date){
echo "
<table width=100% border=1>
<tr>
<td align=center>Name</td>
<td align=center>Description</td>
<td align=center>Create At</td>
<td align=center>Created By</td>
<td align=center>Completed At</td>
<td align=center>Edit</td>
<td align=center>Delete</td>
</tr>
<tr>
<td align=center>".($cl['name'])."</td>
<td align=center>".($cl['description'])."</td>
<td align=center>".($cl['created_at'])."</td>
<td align=center>".($cl['username'])."</td>
<td align=center>".($cl['completed_at'])."</td>";
?>
<td><a href="alterar.php?id=<?=$cl['id_task']?>">↺</a></td>
<td><a href="eliminar.php?id=<?=$cl['id_task']?>" onclick="return confirm('Tem a certeza que pretende eliminar o registo?')">x</a></td>
</tr>
<?php
echo"</table><br>";
}else{
echo"<table width=100% border=1>
<tr>
<td align=center>Name</td>
<td align=center>Description</td>
<td align=center>Create At</td>
<td align=center>Created By</td>
<td align=center>Completed At</td>
<td align=center>Edit</td>
<td align=center>Delete</td>
<tr>
<td align=center>".($cl['name'])."</td>
<td align=center>".($cl['description'])."</td>
<td align=center>".($cl['created_at'])."</td>
<td align=center>".($cl['username'])."</td>
<td align=center>".($cl['completed_at'])."</td>
</table>";
}
}
?>
<br>
<a href="registar.html"> <input type="button" name="" value="Create Task"></a>
</body>
</html>
我希望有两个表,每个表都由已完成和未完成的任务填充,但它会为每个任务创建一个新表。
最佳答案
Akash 建议,移动创建 <table>
的代码在循环之外,类似于:
<h1> List of tasks</h1>
<?php
echo "
<table width=100% border=1>
<tr>
<td align=center>Name</td>
<td align=center>Description</td>
<td align=center>Create At</td>
<td align=center>Created By</td>
<td align=center>Completed At</td>
<td align=center>Edit</td>
<td align=center>Delete</td>
</tr>";
foreach($tasks as $cl){
date_default_timezone_set('UTC');
$date = date('m/d/Y h:i:s a', time());
$dayoftask = $cl['completed_at'];
if($dayoftask < $date) {
echo "<tr>
<td align=center>".($cl['name'])."</td>
<td align=center>".($cl['description'])."</td>
<td align=center>".($cl['created_at'])."</td>
<td align=center>".($cl['username'])."</td>
<td align=center>".($cl['completed_at'])."</td>";
?>
<td><a href="alterar.php?id=<?=$cl['id_task']?>">↺</a></td>
<td><a href="eliminar.php?id=<?=$cl['id_task']?>" onclick="return confirm('Tem a certeza que pretende eliminar o registo?')">x</a></td>
</tr>
} else {
echo"<tr>
<td align=center>".($cl['name'])."</td>
<td align=center>".($cl['description'])."</td>
<td align=center>".($cl['created_at'])."</td>
<td align=center>".($cl['username'])."</td>
<td align=center>".($cl['completed_at'])."</td></tr>";
}
}
<?php
echo"</table><br>";
?>
关于php - 多个表,其中只有 2 个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55336329/