我不知道如何解释我的问题,所以在这里
请参阅我的代码也许这会更好地解释
$sele = "SELECT asatbl_1.asaName, asatbl_1.asaSurname, asatbl.asaName, asatbl.asaSurname, asalink.linkammount
FROM asatbl AS asatbl_1 INNER JOIN (asalink INNER JOIN asatbl ON asalink.asaid = asatbl.asaid) ON asatbl_1.asaSales_ref = asalink.asaSales_ref
WHERE asalink.asaSales_ref=1001";
$result = mysql_query($sele);
echo "<table border='1' cellpadding='10'>";
echo "<tr> <th>ASA Name</th> <th>ASA Surname</th> <th>Recipient Name</th> <th>Recipient Surname</th> <th>Amount</th></tr>";
if($mak = mysql_num_rows($result) > 0){
while($row = mysql_fetch_assoc($result)){
echo "<tr>";
echo '<td>' . $row['asaName'] . '</td>';
echo '<td>' . $row['asaSurname'] . '</td>';
echo '<td>' . $row['asatbl_1.asaName'] . '</td>';
echo '<td>' . $row['asatbl_1.asaSurname'] . '</td>';
echo '<td>' . $row['li nkammount'] . '</td>';
echo '<td><a href="edit.php?id=' . $row['id'] . '">Edit</a></td>';
//echo '<td><a href="deleteuser.php?id=' . $row['id'] . '">Delete</a></td>';
echo "</tr>";
你可以看到我使用asatbl_.asaName和asatbl_1.Surname但不起作用
提前感谢您的帮助
此致
答案 0 :(得分:0)
在结果中使用字段名称的别名:
SELECT asatbl_1.asaName as fld1, asatbl_1.asaSurname as fld2, ... and so on.
然后检索数据引用结果集中的别名
$row['fld1']
$row['fld2']
...
希望这有帮助
答案 1 :(得分:0)
我发现您尝试使用$row['asatbl_1.asaName']
和$row['asatbl_1.asaSurname']
获取字段值的方式存在问题。您必须通过删除列名称前的表名来简单地使用$row['asaName']
和$row['asaSurname']
。
在PHP中运行任何SQL查询后,如果使用。(点)通过像{ - 1}这样的符号来获取带有表名的列,则不应访问PHP查询结果中的列值,并且表名前缀为您在SELECT **table_name.column_name** FROM table_name
和$row['asatbl_1.asaName']
中执行的操作。