2013-07-20 80 views
1

我想在一個陣列來存儲if語句內部產生的use_id_one的所有值內,如果產生的。任何想法如何做到這一點?存儲值數組

$query = mysql_query(" SELECT `user_id` FROM users WHERE (surname LIKE '$name%' AND name LIKE '$surname%') OR (surname LIKE '$surname%' AND name LIKE '$name%') "); 

while($run = mysql_fetch_array($query)){ 
    $user_id_one = $run['user_id']; 

    $check_friend_query = mysql_query(" SELECT friends_id from friends WHERE (user_one='$session_user_id' AND user_two ='$user_id_one') OR (user_one='$user_id_one' AND user_two='$session_user_id') "); 

    if(mysql_num_rows($check_friend_query) == 1 ){  
     echo"$user_id_one"; 
     //the above echo prints me all user_id_one values I want 
     //how to store all these values of user_id_one in an array 

    } 
}  

和哪能輸出他們旁邊,以確保(用於測試目的)

+0

創建數組並使用這些值填充...我沒有看到問題... $ arr [] = $ user_id_one會將值附加到數組中。 – sashkello

+0

任何想法如何做到這一點,因爲我曾嘗試沒有工作 – user2491321

回答

2

存儲correclty替換此行:

echo"$user_id_one"; 

這一行

$array[] = $user_id_one; //this will store the $user_id_one value in the array 
+0

好,謝謝它的工作終於... – user2491321

1

添加以下修改的代碼的值添加到一個數組

$usersIdArray = array(); 
$index = 0; 
while($run = mysql_fetch_array($query)){ 
    $user_id_one = $run['user_id']; 

    $check_friend_query = mysql_query(" SELECT friends_id from friends WHERE (user_one='$session_user_id' AND user_two ='$user_id_one') OR (user_one='$user_id_one' AND user_two='$session_user_id') "); 

    if(mysql_num_rows($check_friend_query) == 1 ){  
     $userIdArray[$index++] = $user_id_one; 

    } 
} 

foreach($userIdArray as $userId) { 
    echo $userId; 
} 
+1

我認爲一個更好的語法是'$ userIdArray [] = $ user_id_one;',因爲它減少的開銷一個附加變量,同時達到相同的效果 –