Hallo, ich versuche für meine HP eine Art online-Stammbaum zu entwickeln.
Die relevanten Daten sind auf 3 Tabellen verteilt und müssen dann für die Ausgabe "zusammengesucht" werden. Das klappt soweit ganz gut, mit ausnahme der Geschwister.
Tabelle st_pers enthält die persönlichen Daten mit einem eindeutigen Identifyer: PERSONID (kurz pid)
Tabelle st_elki enthält in der Spalte ELTERN deren pid und in der Spalte Kinder deren pid
Bei der Abfrage der Daten für die Eltern sichere ich deren pid in dem array $elid.
Dieses Array will ich dann in dem folgendem Select für die Ermittlung deren Kinder benutzen. Leider schein das nicht zu funktionieren.
PHP-Code:
// Eltern
$elid=array();
$i=0;
$sql= "SELECT
*
FROM
ST_PERS
WHERE
PERSONID IN(
SELECT ELTERN FROM ST_ELKI WHERE KINDER=" . "'" . $hp['PERSONID']."')";
$resultel = mysql_query($sql) OR die(mysql_error());
while($el = mysql_fetch_assoc($resultel)) {
print_r($el);
$elid[$i]=$el['PERSONID'];
$i++;
}
print_r($elid);
// Geschwister
$sql= "SELECT
*
FROM
ST_PERS
WHERE
PERSONID IN(
SELECT KINDER FROM ST_ELKI WHERE ELTERN IN(" . "'" . $elid ."') GROUP BY KINDER)";
$resultge = mysql_query($sql) OR die(mysql_error());
while($ge = mysql_fetch_assoc($resultge)) {
print_r($ge);
}
Für kostruktive Vorschläge bin ich dankbar. Thx + Grüße rost