Claro que no te lo inserta porque estás creando los array con clave automática...
Tu array tipo queda así:
Código PHP:
Ver original$tipo = array ('Barcelona','Tarragona','Lleida','Girona');
echo $tipo[0] //Imprime Barcelona
echo $tipo[1] //Imprime Tarragona
echo $tipo[2] //Imprime Lleida
Por eso si en el $_POST['ciudad'] te viene Barcelona, no encuentra ningún array con llave "Barcelona". La pregunuta es... ¿por qué haces esto así y no ingresas directamente el $_POST['ciudad'] que te viene del formulario?