![](/img/trans.png)
[英]How do I get different user selected SQL tables displayed as an html table using PHP?
[英]How do I get data from 2 SQL tables and put it in a single HTML table?
PHP在这里:
<?php
$sth = $conn->prepare('SELECT employee.name, employee.type, employee.rate, work.overtime, work.leaves, work.ticket FROM employee, work');
$sth->execute();
$data = $sth->fetchAll();
foreach ($data as $row ){
if($row['name']!=""){
?>
HTML:
<tr>
<td>
<input type="text" placeholder="Name" value="<?php echo $row['name']?>"/>
</td>
<td>
<input type="text" placeholder="Type" value="<?php echo $row['type']?>"/>
</td>
<td>
<input type="text" placeholder="Rate" value="<?php echo $row['rate']?>"/>
</td>
<td>
<input type="text" placeholder="OT" value="<?php echo $row['overtime']?>"/>
</td>
<td>
<input type="text" placeholder="Leaves" value="<?php echo $row['leaves']?>"/>
</td>
<td>
<input type="text" placeholder="Total" value="<?php echo $row['ticket']?>"/>
</td>
</tr>
两者之间的名称是通用的。
如何显示数据?
您要查找的术语是JOIN
。 阅读MySQL Official Doc的手册
<?php
$sth = $conn->prepare('SELECT employee.name, employee.type, employee.rate, work.overtime, work.leaves, work.ticket FROM employee left join work on employee.name=work.name');
$sth->execute();
$data = $sth->fetchAll();
foreach ($data as $row ){
if($row['name']!=""){
?>
然后,您的HTML代码将如下所示(确保您在<table>
标记下使用<tr>
。)
<tr>
<td>
<input type="text" placeholder="Name" value="<?php echo $row['name']?>"/>
</td>
<td>
<input type="text" placeholder="Type" value="<?php echo $row['type']?>"/>
</td>
<td>
<input type="text" placeholder="Rate" value="<?php echo $row['rate']?>"/>
</td>
<td>
<input type="text" placeholder="OT" value="<?php echo $row['overtime']?>"/>
</td>
<td>
<input type="text" placeholder="Leaves" value="<?php echo $row['leaves']?>"/>
</td>
<td>
<input type="text" placeholder="Total" value="<?php echo $row['ticket']?>"/>
</td>
</tr>
我在这里使用左连接,因为您可能需要输入所有员工的姓名。 如果只需要这两个表之间的公用记录,则只需使用内部联接而不是左联接。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.