Sie haben $ in der letzten Zeile der Abfrage vergessen, kurz vor 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' statt $user_id macht viel mehr Sinn :)