[r4g3]
06-10-2006, 22:00
Boas pessoal da techzone!
Tenho aqui um problema com um formulário em PHP para ser usado como inscrição numa conferência.
O problema é o seguinte: para além de campos normais de texto como nome, morada, etc, tenho tb 6 checkbox's para quem estiver interessado inscrever-se nos workshops disponiveis. E aqui é q entra a bronca, visto que tenho um form "calcula" que no final desse formulário vai calcular o valor total a pagar (já com o preço base + n.º workshops escolhidos). De referir que, este form "calcula" não faz nenhum insert numa base de dados (para já) e serve somente para calcular os tais valores para a pessoa que se inscreve ter logo ali disponível o total, sem ter mesmo de se inscrever.
Espero por esta altura estar a ser claro...
O problema agora é que eu não consigo que, caso a pessoa se engane e pretenda por exemplo pôr mais um workshop, as checkbox's fiquem "checked" como a pessoa tinha escolhido, para posterior envio para a base de dados (e aqui sim com o form completo e que inclui o valor calculado).
Fica aqui somente o pedaço de código desta parte das checkbox's e da parte do valor total a pagar:
<table width="100%" border="0" cellspacing="0" cellpadding="2">
<form action="<?=$_SERVER["PHP_SELF"]?>" method="POST">
<tr>
<td>SP-1
<input name="sp[0]" type="checkbox" VALUE="1"/>
</td>
<td> </td>
</tr>
<tr>
<td>SP-2
<input type="checkbox" name="sp[1]" value="1" /></td>
<td> </td>
</tr>
<tr>
<td>SP-3
<input type="checkbox" name="sp[2]" value="1" /></td>
<td> </td>
</tr>
<tr>
<td>SP-4
<input type="checkbox" name="sp[3]" value="1" /></td>
<td> </td>
</tr>
<tr>
<td>SP-5
<input type="checkbox" name="sp[4]" value="1" /></td>
<td> </td>
</tr>
<tr>
<td>SP-6
<input type="checkbox" name="sp[5]" value="1" /></td>
<td> </td>
</tr>
<tr>
<td> </td>
<td><input name="calcula" type="submit" value="Calcular"></td>
</tr>
</FORM>
</table>
<p><span class="titulo1">Pagamento</span></p>
Total a pagar (50 € + 20 x nº de workshops):
<?php
if(isset($_POST["calcula"]))
{
$result = calcular($_POST["sp"]); // função calcular está num ficheiro à parte
echo $result."€";
}
?>
Desde já obrigado a todos os que responderem, mesmo os que não me conseguirem dar a solução :D
Tenho aqui um problema com um formulário em PHP para ser usado como inscrição numa conferência.
O problema é o seguinte: para além de campos normais de texto como nome, morada, etc, tenho tb 6 checkbox's para quem estiver interessado inscrever-se nos workshops disponiveis. E aqui é q entra a bronca, visto que tenho um form "calcula" que no final desse formulário vai calcular o valor total a pagar (já com o preço base + n.º workshops escolhidos). De referir que, este form "calcula" não faz nenhum insert numa base de dados (para já) e serve somente para calcular os tais valores para a pessoa que se inscreve ter logo ali disponível o total, sem ter mesmo de se inscrever.
Espero por esta altura estar a ser claro...
O problema agora é que eu não consigo que, caso a pessoa se engane e pretenda por exemplo pôr mais um workshop, as checkbox's fiquem "checked" como a pessoa tinha escolhido, para posterior envio para a base de dados (e aqui sim com o form completo e que inclui o valor calculado).
Fica aqui somente o pedaço de código desta parte das checkbox's e da parte do valor total a pagar:
<table width="100%" border="0" cellspacing="0" cellpadding="2">
<form action="<?=$_SERVER["PHP_SELF"]?>" method="POST">
<tr>
<td>SP-1
<input name="sp[0]" type="checkbox" VALUE="1"/>
</td>
<td> </td>
</tr>
<tr>
<td>SP-2
<input type="checkbox" name="sp[1]" value="1" /></td>
<td> </td>
</tr>
<tr>
<td>SP-3
<input type="checkbox" name="sp[2]" value="1" /></td>
<td> </td>
</tr>
<tr>
<td>SP-4
<input type="checkbox" name="sp[3]" value="1" /></td>
<td> </td>
</tr>
<tr>
<td>SP-5
<input type="checkbox" name="sp[4]" value="1" /></td>
<td> </td>
</tr>
<tr>
<td>SP-6
<input type="checkbox" name="sp[5]" value="1" /></td>
<td> </td>
</tr>
<tr>
<td> </td>
<td><input name="calcula" type="submit" value="Calcular"></td>
</tr>
</FORM>
</table>
<p><span class="titulo1">Pagamento</span></p>
Total a pagar (50 € + 20 x nº de workshops):
<?php
if(isset($_POST["calcula"]))
{
$result = calcular($_POST["sp"]); // função calcular está num ficheiro à parte
echo $result."€";
}
?>
Desde já obrigado a todos os que responderem, mesmo os que não me conseguirem dar a solução :D