Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Após muito pesquisar peço ajuda para resolver a soma dos valores das diárias por tipo de quarto em determinada data passada pelo formulário. O campo resposta deveria retornar com esta soma mas retorna sempre com o primeiro valor e se repete várias vezes. O campo total retorna com o valor das diárias vezes o número de quartos e tipo de quartos e eu quero somente a soma. O código está abaixo e depois dele vou colocar como ele retorna. Muito grata.
<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<%
entrada = request.form("entrada")
saida = trim(request.form("saida"))
ndiarias = trim(request.form("diarias"))
dias = trim(request.form("dias"))
adultos = trim(request.form("adultos"))
criancas = trim(request.form("criancas"))
bebes = trim(request.form("bebes"))
quartos = trim(request.form("quartos"))
jantar = trim(request.form("jantar"))
msg = replace(preferencias, chr(13), "<br>")
hospedes = CInt(adultos) + CInt(criancas)
Dim galeria
Dim galeria_cmd
Dim galeria_numRows
Set galeria_cmd = Server.CreateObject ("ADODB.Command")
galeria_cmd.ActiveConnection = "PROVIDER=Microsoft.ACE.OLEDB.12.0;Data Source=E:\home\pousadadosanjos1\dados\hospedes.accdb"
galeria_cmd.CommandText = "SELECT * FROM tarifadiachale WHERE Data BETWEEN #" & entrada & "# and #" & saida & "#;"
galeria_cmd.Prepared = true
Set galeria = galeria_cmd.Execute
galeria_numRows = 0
Dim Repeat1__numRows
Dim Repeat1__index
Repeat1__numRows = -1
Repeat1__index = 0
galeria_numRows = galeria_numRows + Repeat1__numRows
tipo= galeria("Tipo")
adl1 = galeria("adl1")
adl2 = galeria("adl2")
adl3 = galeria("adl3")
adl4 = galeria("adl4")
adl5 = galeria("adl5")
adl6 = galeria("adl6")
mindias = galeria("mindias")
data= galeria("data")
periodo = galeria("periodo")
acomodacao = galeria("acomodacao")
maximopessoas = galeria("Max pessoas")
'disp= galeria("disp")
refeicao = galeria("refeicao")
IF hospedes = 1 then diaria = adl1 end if
if adultos = 2 then diaria = adl2 end if
if hospedes = 3 then diaria = adl3 end if
if hospedes = 4 then diaria = adl4 end if
if hospedes = 5 then diaria = adl5 end if
if hospedes = 6 then diaria = adl6 end if
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-utf8">
<style type="text/css">
body{background-color:#FFFFFF;padding:0px;;overflow:auto;text-align:left;}
#tudo {width:790px;margin:0 auto;top:0; }
</style>
</head>
<body>
<div id="tudo">
<table border="0" align="left" cellpadding="0">
<form id='form1' name='form1' method='POST' action='recupera2.asp'>
<!--DWLayoutTable-->
<tr><td>
<%
If ndiarias > mindias then
response.write "O mínimo de diárias para o período é "&mindias&".<br>"
end if
If maximopessoas < hospedes then
response.write "O número máximo de pessoas nesta acomodação é de " &maximopessoas& ". Utilize mais quartos ou escolha outra acomodação."
end if
'If quartos > 1 then
'response.write "Calcule o valor de um quarto por vez."
'end if
'if disp = n then
'response.write "Não temos mais disponibilidade neste tipo de acomodação."
'end if
If jantar = sim then
diaria = diaria + (refeicaoadultos) + ((refeicaocriancas)/2)
end if
if ndiarias = 3 and periodo = "alta" then
diaria = diaria*0.9
end if
if ndiarias >3 and < 5 and periodo = "baixa" then
diaria = diaria*0.9
end if
%>
</td></tr>
<tr>
<td width="145"height="22" class="style3" valign="bottom">Entrada:</td>
<td width="145" align="left"><span class="style3"><%=entrada%></span></td>
<td width="145"><span class="style3">Saída:</span></td>
<td width="145"><span class="style3"><%=saida%></span></td>
</tr>
<tr>
<td><span class="style3">Mínimo de diárias:</span></td>
<td><span class="style3"><%=mindias%></span></td>
<td width="145"><span class="style3">Total de diárias:</span></td>
<td><span class="style3"><%=ndiarias%></span></td>
</tr>
<tr>
<td style="vertical-align:text-top"><span class="style3">Dias:</span></td>
<td colspan="3" style=" vertical-align:middle"><span class="style3"><%=dias%></span></td>
</tr>
<tr>
<td><span class="style3">Adultos:</span></td>
<td><span class="style3"><%=adultos%></span></td>
<td><span class="style3">Bebês:</span></td>
<td><span class="style3"><%=bebes%></span></td>
</tr>
<tr>
<td style="vertical-align:text-top"><span class="style3">Crianças:</span></td>
<td><span class="style3"><%=criancas%></span></td>
<td><span class="style3">Total de Hóspedes:</span></td>
<td><span class="style3"><%=hospedes%></span></td>
</tr>
<tr>
<!-- <td style="vertical-align:text-top"><span class="style3">Nº de quartos:</span></td>
<td><span class="style3"><%'=quartos%></span></td> -->
<td><span class="style3">Jantar incluso:</span></td>
<td><span class="style3"><%=jantar%></span></td>
</tr>
<tr><td colspan="4"> </td></tr>
<%
dim sumdiaria
sumdiaria = 0
While ((Repeat1__numRows <> 0) AND (NOT galeria.EOF))
sumdiaria=sumdiaria +(Cint(diaria))
viadoc = sumdiaria*0.9
avista = sumdiaria*0.85
resposta = "<tr><td class='label'><input name='botao' type='radio' value='"&diaria&"' /></td><td colspan='3'>Tipo de Acomodação:"&tipo&"<br>Valor total das diárias:<br>R$ "&sumdiaria&" para pagamento via cartões de crédito e débito<br> R$" &viadoc& " para pagamento via doc e cheque ou dinheiro<br>R$"&avista&" para pagamento à vista, na reserva<br>Máximo de pessoas:"&maximopessoas&"<br>Acomodação:"&acomodacao&"</td></tr>"
response.write resposta
total = total + 1
Repeat1__index=Repeat1__index+1
Repeat1__numRows=Repeat1__numRows-1
galeria.MoveNext()
Wend
Total = Total + sumdiaria
response.write "<tr><td colspan='4'><br>"&total&"</td></tr>"
%>
<tr><td colspan="4">
<a href="javascript:history.go(-1)" class="style2"></a>
<input name="Submit" type="submit" value="Calcular valores das diárias"/>
<input name="envia" type="hidden" id="envia" value="sim" />
<input type="hidden" name="MM_insert" value="form1" />
</td></tr>
</form>
</table>
</div>
<%
galeria.Close
Set galeria = Nothing
%>
</body>
</html>
O código retorna com:
O mínimo de diárias para o período é 2.
O número máximo de pessoas nesta acomodação é de . Utilize mais quartos ou escolha outra acomodação.
Entrada: 19/12/2012 Saída: 20/12/2012
Mínimo de diárias: 2 Total de diárias: 1
Dias: 19/12/2012,20/12/2012
Adultos: 2 Bebês: 0
Crianças: 0 Total de Hóspedes: 2
Jantar incluso: nao
Tipo de Acomodação:Suíte
Valor total das diárias:
R$ 336 para pagamento via cartões de crédito e débito
R$302,4 para pagamento via doc e cheque ou dinheiro
R$285,6 para pagamento à vista, na reserva
Máximo de pessoas:
Acomodação:
Tipo de Acomodação:Suíte
Valor total das diárias:
R$ 336 para pagamento via cartões de crédito e débito
R$302,4 para pagamento via doc e cheque ou dinheiro
R$285,6 para pagamento à vista, na reserva
Máximo de pessoas:
Acomodação:
Tipo de Acomodação:Suíte
Valor total das diárias:
R$ 336 para pagamento via cartões de crédito e débito
R$302,4 para pagamento via doc e cheque ou dinheiro
R$285,6 para pagamento à vista, na reserva
Máximo de pessoas:
Acomodação:
Tipo de Acomodação:Suíte
Valor total das diárias:
R$ 336 para pagamento via cartões de crédito e débito
R$302,4 para pagamento via doc e cheque ou dinheiro
R$285,6 para pagamento à vista, na reserva
Máximo de pessoas:
Acomodação:
Tipo de Acomodação:Suíte
Valor total das diárias:
R$ 336 para pagamento via cartões de crédito e débito
R$302,4 para pagamento via doc e cheque ou dinheiro
R$285,6 para pagamento à vista, na reserva
Máximo de pessoas:
Acomodação:
Tipo de Acomodação:Suíte
Valor total das diárias:
R$ 336 para pagamento via cartões de crédito e débito
R$302,4 para pagamento via doc e cheque ou dinheiro
R$285,6 para pagamento à vista, na reserva
Máximo de pessoas:
Acomodação:
Sendo que ele precisa retornar em resposta, de acordo com os dados do banco:
Tipo de Acomodação:Suíte
Valor total das diárias:
R$ 672 para pagamento via cartões de crédito e débito
R$604,8 para pagamento via doc e cheque ou dinheiro
R$571,20 para pagamento à vista, na reserva
Máximo de pessoas:4
Acomodação: Pomar, Hortensias e Pedras
Tipo de Acomodação:Chale
Valor total das diárias:
R$ 780,00 para pagamento via cartões de crédito e débito
R$702,00 para pagamento via doc e cheque ou dinheiro
R$663,00 para pagamento à vista, na reserva
Máximo de pessoas: 3
Acomodação: Platanos, Cabana e Palafita
Tipo de Acomodação:Casa Histórica
Valor total das diárias:
R$ 1452,00 para pagamento via cartões de crédito e débito
R$1306,80 para pagamento via doc e cheque ou dinheiro
R$1234,20 para pagamento à vista, na reserva
Máximo de pessoas:<br>Acomodação: Casa Histórica
Por favor, me ajudem!
Carregando comentários...