伙计我有这样的东西把结果放在html表中。代码如下:
<?php
$db_host = 'localhost'; // Server Name
$db_user = 'username'; // Username
$db_pass = 'password'; // Password
$db_name = 'database'; // Database Name
$conn = mysqli_connect($db_host, $db_user, $db_pass, $db_name);
if (!$conn) {
die ('Failed to connect to MySQL: ' . mysqli_connect_error());
}
$sql = "select * FROM Table WHERE test ='10'";
$query = mysqli_query($conn, $sql);
if (!$query) {
die ('SQL Error: ' . mysqli_error($conn));
}
?>
<table id="MyTable" class="display" cellspacing="0" width="100%">
<br><br>
<thead>
<tr>
<th>NO</th>
<th><?=$this->lang->line('NO');?> [h]</th>
<th><?=$this->lang->line('RESULTS1');?></th>
<th><?=$this->lang->line('RESULTS2');?></th>
<th><?=$this->lang->line('RESULTS3');?></th>
</tr>
</thead>
<tbody>
<?php
$no = 0;
$total = 0;
while ($row = mysqli_fetch_array($query))
{
$amount = $row['time_spent'] == 0 ? '' : number_format($row['amount']);
echo '<tr>
<td>'.$no.'</td>
<td>'.$row['result1'].'</td>
<td>'.$row['result2'].'</td>
<td>'.$row['result3'].'</td>
<td>'.$row['reg_date'].'</td>
<td>'.$row['result from another ($sql)'].'</td>
</tr>';
$total += $row['result1'];
$no++;
}?>
</tbody>
</tbody>
<tr>
<td colspan="3"><?=$this->lang->line('application_total');?></td>
<th><? echo $total_time;?></th>
</tr>
</tbody>
</table>
一切都很好但是有没有可能在这段代码中添加第二个sql查询,这样我就可以将结果放到同一个表中的<td>...</td>
中,如上所示?
答案 0 :(得分:0)
一切都很好,但有没有可能添加到此代码中 第二个SQL查询..
当然有可能。
你可以这样做&#34;选择* FROM another_Table WHERE the_id =&#39;&#34;。 $ row [&#34; relation_id&#34;]。&#34;&#39;&#34 ;;
但是如果关系是1-1,那么我建议您使用连接表而不是执行新查询。
即:
select a.*, b.another_field
from table1 a
join table2 b on b.relation_id = a.relation_id
答案 1 :(得分:0)
将查询嵌入循环中是不明智的。因为每次都会执行嵌套查询。这是一种糟糕的代码风格。
您最好通过join
或constraint