Antes de nada, doy por supuesto que aunque tu base de datos se llame
idioma, los cambios los haces sobre una tabla llamada
idioma con los tres campos mencionados, ¿no?
Supuesto eso, el problema estaría aquí:
Código PHP:
$idioma_defecto="UPDATE idioma SET idioma_defecto='1' WHERE idioma='espaniol'";
$idioma_defecto="UPDATE idioma SET idioma_defecto='0' WHERE idioma='ingles'";
if (mysql_query($idioma_defecto))
Tal y como está sólo ejecutas la segunda consulta, es decir, desactivas el inglés como idioma por defecto, pero no activas el español, ya que la consulta relativa al español no llegas a ejecutarla.