【发布时间】:2019-03-14 01:46:26
【问题描述】:
我有以下代码:
<?php
include_once '../includes/db.inc.php';
$sql = "SELECT * FROM clients ORDER BY nif_id ASC;";
$result = mysqli_query($conn, $sql);
$resultCheck = mysqli_num_rows($result);
if ($resultCheck > 0) {
while ($row = mysqli_fetch_assoc($result)) {
$first = $row["prm_nome"];
$last = $row["apelido"];
$phone = $row['nmr_tlm'];
$email = $row['mail'];
$nif = $row['nif_id'];
$flight = "SELECT flight_id FROM flights INNER JOIN clients ON flights.nif_id=clients.nif_id";
echo '<tr>';
echo '<td><a href="detail.php?id='. $nif . '">'.$nif.'</a></td>';
echo '<td>'.$first.'</td>';
echo '<td>'.$last.'</td>';
echo '<td>'.$phone.'</td>';
echo '<td>'.$email.'</td>';
echo '<td><a href="../flights/detail.php?id='. $flight . '">'.$flight.'</a></td>';
echo '</tr>';
}
}
?>
我需要回显SELECT flight_id FROM flights INNER JOIN clients ON flights.nif_id=clients.nif_id 查询的结果。但是当我保存文件时,我在页面上看到的是与该查询而不是结果的链接。
我是否应该在第一个 $sql = 下使用该查询开始一个新的 $sql =?
还是有其他方法?
我尝试了UNION 和SELECT *, flight_id FROM flights INNER JOIN clients ON flights.nif_id=clients.nif_id FROM clients ORDER BY nif_id ASC;,但后来我得到了mysqli_num_rows() expects parameter 1 to be mysqli_result, bool given。
【问题讨论】:
-
您永远不会执行
$flight查询。 -
内部查询是否应该依赖于外部查询中的行?