j4nk3y: Merkwürdiges Verhalten bei mySQL Anfrage

Beitrag lesen

Guten Morgen,

Ich arbeite seit Gestern an einem mir unärklärlichen Verhalten meines Codes.

Nun Zum Problem, Ich habe drei Tabellen Die jeweils eine Auto Increment Spalte für die jeweilige ID besitzen, (Tab1.sid, Tab2.pid, Tab3.mid).

In der Tabelle 2 ist zusätzlich die sid aus Tab 1 vermerkt und in der dritten ist zusätzlich eine Spalte pid vorhanden. So entsteht jeweils eine 1:n Verbindung von Tab1 zu Tab2 und von Tab 2 zu Tab3.

Nun möchte ich mit dem folgenden Code aus Tabelle 2 die pid's auslesen die für eine gewisse sid hinterlegt sind.

For($i; $i <= $anz_neu ; $i++)
{
	$query2 = "SELECT pid FROM tab2 Where sid = '$i'";
	$ergebnis2 = mysql_query($query2);
 	$num = mysql_num_rows($ergebnis2);
	while($arr = mysql_fetch_array($ergebnis2))
		{
			$array[] = $arr;
		}
		
	For($a = 0; $a < $num ; $a++)
	{
		$pid = $array[$a][0];
                echo $pid.'</br>';
	}
	echo '</br>';
}

Nun das eigentliche Problem. Falls $i=$anz_neu funktioniert der Code genau wie er soll und er gibt die pid's zur zugehörigen sid aus. Jedoch wenn mehrere sid's abgefragt werden sollen, sprich $i<$anz_neu gibt er bei jedem durchlauf der zweiten For-Schleife nicht die pid aus sondern: { 1 2 3 . . $num } aus.

Hoffe das ist verständlich und jemand sieht sofort wo das Problem liegt.

Gruß Jo

akzeptierte Antworten