Array Explode - print_r Response zu oft

Purdey

Erfahrenes Mitglied
Hallo Zusammen ich möchte folgenden Code nutzen im die Anzahl der gewählten User welche im Format kommen User1_User2_UserXX_ in die Datenbank zu übermitteln.

Leider erhalte ich nicht nur eine Respons sondern das ganze X-Fach, kann mir jemand sagen, was falsch an meinem Code ist?

PHP:
<?

	$f_ids_alt_arr = explode("_", "2_3_4_5_99_"); 
	$f_ids_neu_arr = array_unique($f_ids_alt_arr); 
	$f_ids_neu_str = implode("_", $f_ids_neu_arr); 
	$f_ids = explode('_', $f_ids_neu_str);

	
	for ($i=0; $i < count($f_ids); $i++)
	{
		$res = mysql_query("SELECT * FROM users where User_ID =" . $f_ids[$i]);
		
			
		while ($row = @mysql_fetch_array($res))
		{
			  //Hier soll in die DB geschrieben werden
			  $array[$i] = $row['User_ID']; 
		}
	}
	
	
	
	echo 'Empfaenger : ';
	print_r($array);


?>

ich hoffe ihr könnt mir helfen, Vielen Dank!
 
item: Warum machst du aus dem Array wieder ein String? und dann zerlegst du ihn wieder?

item: Du kannst die Liste mit Kommas zusammensetzen und gleich mit IN() an die DB übergeben.

item: Du führst das SQL nie aus. mysql_query() fehlt

PHP:
    //mit array_filter leere IDs ausfiltern, mit
    $ids = array_unique(array_filter(explode('_', '2_3_3_4_5_99_')));
    $idList = implode(', ', $ids);
    
    $users = array();
    
    $sql = mysql_query("SELECT * FROM users where User_ID IN ('{$idList}');");
    $result = mysql_query($sql);                    
    while ($row = @mysql_fetch_assoc($result)){
          $users[] = $row['User_ID']; 
    }
    echo 'Empfaenger : ';
    print_r($users);
 
Zurück