Zapomniałeś o $ w ostatniej linii zapytania, tuż przed user_id.
$sql_insert = "INSERT into `language`
(`native`,`other`,`other_list`,`other_read`, `other_spokint`
,`other_spokprod`,`other_writ` )
VALUES
('$native','$other','$other_list','$other_read','$other_spokint','$other_spokprod',
'$other_writ') WHERE id= " . $_SESSION[$user_id] . ")"
edit:'user_id' zamiast $user_id ma o wiele więcej sensu:)