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

    }
}       

そして、保存された正しいことを確認するために、次にそれらを出力するにはどうすればよいですか(テスト目的で)

4

2 に答える 2

2

次の行を置き換えます。

echo"$user_id_one";

この行で

$array[] = $user_id_one; //this will store the $user_id_one value in the array
于 2013-07-20T13:10:38.573 に答える
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;
}
于 2013-07-20T13:11:44.847 に答える