ecco!
youuuuu! :mavieni:
dopo ore ho scoperto di aver commesso una cazzabubbola:
l'errore stava nello script, più precisamente nel value della opzione che andavo a creare:
codice:
<script>
  function aggiornaMese(source,valore){
    giorni=new Array(31,29,31,30,31,30,31,31,30,31,30,31);
    for (i=0;i<=31;i++){
      source.options[i]=null;
    }
    for (i=0;i<giorni[valore];i++){
      source.options[i]=new Option(i+1,i+1 );
    }
	source.options[0].selected="true";
  }
</script>