<?
$link = $mysql->query("SELECT planets.*,
planet_prototyps.*,
moons.*,
moon_prototyps.*,
colonies.*,
users.*
FROM planets
LEFT JOIN planet_prototyps
ON planets.planet_prototyp_id = planet_prototyps.planet_p_id
LEFT JOIN moons
ON moons.moon_planet_id = planets.planet_id
LEFT JOIN moon_prototyps
ON moons.moon_prototyp_id = moon_prototyps.moon_p_id
LEFT JOIN colonies
ON colonies.colonie_planet_id = planets.planet_id
LEFT JOIN users
ON colonies.colonie_user_id = users.user_id
WHERE planets.planet_system_id ='".$home_system["system_id"]."'
GROUP BY planets.planet_id
ORDER BY planets.planet_count") or die($mysql->error()); ?>
Es wird ein Planeten-System - system_id in WHERE - Klausel - abgefragt. Liefern soll die mysql alle Sonnen, Planeten, Monde, Kolonien und Benutzer und das in einem Array, welches ich mir wie folgt vorstelle:
Die Abhängigkeiten der einzelnen Gruppen soll sich in einem multidimensionalen Arrays ergeben.
<?
$link = $mysql->query("SELECT planets.*,
planet_prototyps.*,
moons.*,
moon_prototyps.*,
colonies.*,
users.*
FROM planets
LEFT JOIN planet_prototyps
ON planets.planet_prototyp_id = planet_prototyps.planet_p_id
LEFT JOIN moons
ON moons.moon_planet_id = planets.planet_id
LEFT JOIN moon_prototyps
ON moons.moon_prototyp_id = moon_prototyps.moon_p_id
LEFT JOIN colonies
ON colonies.colonie_planet_id = planets.planet_id
LEFT JOIN users
ON colonies.colonie_user_id = users.user_id
WHERE planets.planet_system_id ='".$home_system["system_id"]."'
ORDER BY planets.planet, planets.moon, planets.colonie, planets.user") or die($mysql->error());
while ($row = $mysql->fetch_array($link)) $arraycache[$row['system']][$row['planet']][$row['moon']][$row['colonie']][$row['user']] = $row; ?>
Ps.: die in der ORDER Klausel angegebenen Feldnamen sind von mir frei erfunden, bitte abgleichen.