Jump to content

Tratamento de dados de um formulário


Recommended Posts

Posted (edited)

boas.

sou um novato em php, estou a dar os primeiros passos.

estou a tentar tratar dos dados de um formulario mas não tou a conseguir, se alguem me puder ajudar agradeço.

os dados do formulário são estes:

<form action="precos.php" method="post">
<p>
 <label for="peso"><b>Peso:</b><br /></label><input type="text" name="peso" required="required" size="4" id="peso" onkeypress='return SomenteNumero(event)'/></p>

<BR>

<B>Destino:</B><br>
<input name=destino type=radio value="Portugal Continental" checked="checked"> Portugal Continental <input type=radio name=destino value="Madeira"> Madeira <br><br>

<B>Contra-Reembolso:</B><br>
<input name=reembolso type=radio value="sem reembolso" checked="checked"> Não <input name=reembolso type=radio value="com reembolso"> Sim <br><br>

<input type=submit title="Cálculo de preço" value="Cálculo de preço">
 </p>
</form>

e os dados do precos.php sao estes:

<?php

$cpeso = $_POST["peso"];
$cdest = $_POST["destino"];
$creemb = $_POST["reembolso"];

if($_POST["peso"] >= 0 && $_POST["peso"] <= 5) {



  switch ($cdest && $creemb) {
  case "Portugal Continental":
case "com reembolso":
$preco = "€ 11.31" ;
break;

  switch ($cdest && $creemb) {
  case "Portugal Continental":
case "sem reembolso":
$preco = "€ 7.81" ;
break;

  switch ($cdest) {
  case $cdest == "Madeira":
  switch ($creemb) {
  case $creemb == "sem reembolso":
$precom = "€ 15.40";
$precoa = "€ 22.96";
break;

  switch ($cdest) {
  case $cdest == "Madeira":
  switch ($creemb) {
  case $creemb == "com reembolso":
$precom = "€ 18.90";
$precoa = "€ 27.30";
break;


break;
} } }
} } }

}


if($cdest == 'Madeira') {
echo "<center>O transporte pedido para <u>" . $cpeso . " kg</u> com destino a <u>" . $cdest . "</u> e <u>" . $creemb . "</u> é de <h1>" . $precom . "</h1> - via Marítima (mais lento) <br> <h1>"  . $precoa . "</h1> - via Aérea (mais rápido)";
}
else{
echo "<center>O transporte pedido para <u>" . $cpeso . " kg</u> com destino a <u>" . $cdest . "</u> e <u>" . $creemb . "</u> é de <h1>" . $preco;
}

?>	

também ja tentei com if($cpeso >= 6 && $cpeso <= 10) mas sem sucesso.

deve ter ai muitos erros mas para alguem q perceba deve ser um problema facil de resolver.

se alguem puder ajudar, agradeço.

obrigado.

Edited by yoda
Posted

agora que ja está legivel para qem te pretende ajudar, expoe a tua duvida?

qeres validar os dados do formulario certo?

mas quais sao as tuas duvidas ao certo?

quanto aquela que apresentaste, experimenta fazer o teste tratando os numeros como string ( "6" em vez de só 6)

B2R » Beat2Revolution v3.0b | Regista e divulga-nos

beat2revolution.net

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.