データベースでSQLクエリを実行すると、内部結合が希望どおりに機能するようになりました。
SELECT debate.date, school1.name, school2.name
FROM debate
INNER JOIN schools as school1
ON debate.homeid=school1.id
INNER JOIN schools as school2
ON debate.awayid=school2.id
戻り値
date name name
19-01-2013 st Peters St Simons
phpでこれをやってみると。同じselectステートメントを使用して、以下に追加します。
foreach ($result as $row)
{
$debates[] = array(
'date' => $row['date'],
'awayschool' => $row['name'],
'homeschool' => $row['name'],
);
}
<table>
<tr>
<td><?php echo $debate['date']; ?></td>
<td><?php echo $debate['name']; ?></td>
<td><?php echo $debate['name']; ?></td>
</tr>
</table>
どちらが
date name name
19-01-2013 st Peters st Peters
しかし、私はそれを返したいです。
date name name
19-01-2013 st Peters St Simons
私のアレイでは、置換など、いくつかの異なることを試しました
'awayschool' => $row['name'],
と
'awayschool' => $row['school1.name'],
しかし、これを行うと、未定義のインデックスというエラーが表示されます。
私はここで何が間違っているのですか?