Codice PHP:
// se passi un riferimento al form usalo al posto di document.prenotazione o (peggio perchè errore) solo prenotazione
// form potrebbe essere parola riservata in javascript
function DoCalc(f) { 
// parseInt del value dell' option selezionata, ma sei certo che l' option abbia un value? (vedi sotto)
// parseInt restituisce NaN (Not a Number) se non è stato possibile convertire in intero
// ("120.67 euro" diventerebbe 120, "euro 120" diventerebbe NaN perchè la stringa inizia con caratteri non numerici)
  
n_sett=parseInt(f.settimane.options[f.settimane.selectedIndex].value10)
  
n_euro=parseInt(f.Appartamento.options[f.Appartamento.selectedIndex].value10)

// se la stringa è diventata un numero non puoi controllare che il valore sia vuoto, devi controllare che sia un numero
  
if (isNaN(n_sett) || isNaN(n_euro)) { 
    
alert("inserisci la data"); 
  } 
  else { 
// ora puoi ottenere e scrivere nel campo il prodotto dei due numeri
    
message= (n_sett n_euro); 
    
f.totale.value=message 
  


da richiamare con
<input type="button" value="calcola" onclick="DoCalc(this.form)" />

veniamo alla questione del value, questo
codice:
<script type="text/javascript"> 
function appartamentiDelMese(indice){ 
Mese0 = ["Appartamento A euro 480"] 
Mese1 = ["Appartamento A euro 480"] 
Mese2 = ["Appartamento A euro 480"] 
Mese3 = ["Appartamento A euro 480"] 
Mese4 = ["Appartamento A euro 480"] 
Mese5 = ["Appartamento A euro 480"] 
Mese6 = ["Appartamento A euro 680"] 
Mese7 = ["Appartamento A euro 680"] 
Mese8 = ["Appartamento A euro 680"] 
Mese9 = ["Appartamento B euro 440"] 
Mese10 = ["Appartamento B euro 440"] 
Mese11 = ["Appartamento B euro 440"] 


var selectApp = document.forms['prenotazione'].Appartamento 
selectApp.options.length = 0 
for(i=0;i<window["Mese"+indice].length; i++) 
selectApp.options[i] = new Option(window["Mese"+indice][i]) 
}
mi suona un po' strano, vuoi scrivere sempre un' unica option?
da quello che leggo qualsiasi sia il mese avrai un solo valore in array
a che pro un array e a che pro ciclarvi?

inoltre così facendo
new Option(window["Mese"+indice][i])
assegni solo il testo dell' option e non il value

new Option(testo,value)

da qui probabilmente l' impossibilità di ottenere il prodotto

se spieghi meglio come/quando/perchè richiami appartamentiDelMese vediamo di sistemarlo
(sempre che tu non vi riesca da solo)
ciao