Olvidó $ en la última línea de consulta, justo antes de 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' en lugar de $user_id tiene mucho más sentido :)