One user can take up more than one sport. A sport may have more than one user taking it up. As such, there is a many-many relationship between users and sports.
Instead of having a multi-valued column by using implode(), it might be better to add more rows to an intermediate table between the users table and the sports table.
Seems to me be best solution as well. So create a table users_sports, with fields user_id and sport_id. Loop through the submitted sports, for each sport insert a new entry:
for($x = 0;$x < count($_POST['sport_id']);$x++){
$sql = 'INSERT INTO users_sports(user_id,sport_id) VALUES($_POST['user_id'],$_POST['sport_id'][$x])';
$query = mysql_query($sql);
}