Foros del Web » Programando para Internet » PHP »

Acabando sistema de cálculos,

Estas en el tema de Acabando sistema de cálculos, en el foro de PHP en Foros del Web. Hola y muy buen año! Estoy haciendo un sistema de cálculo automático que calcula según los datos que escojan los usuarios de dos listas menú ...
  #1 (permalink)  
Antiguo 03/01/2012, 05:52
Avatar de jors_11  
Fecha de Ingreso: marzo-2011
Ubicación: Granollers
Mensajes: 79
Antigüedad: 13 años, 1 mes
Puntos: 2
Mensaje Acabando sistema de cálculos,

Hola y muy buen año!

Estoy haciendo un sistema de cálculo automático que calcula según los datos que escojan los usuarios de dos listas menú de un formulario en html, los datos de ejemplares ya esta solucionado gracias a vosotros, y los datos de la variable envío, es donde me pierdo un poco.
Yo lo que quiero es que si la gente escoge España se calcule el precio de envió de 9 € y si escoge Sudamérica el precio sea de 20€. De la manera que yo lo hago me sale el nombre que el usuario escoge pero no me sale el valor para poder sumarlo al total de la factura, ¿Como lo puedo solucionar? Gracias de antemano,

Código PHP:
Ver original
  1. <?php
  2.  
  3. $ejemplar = isset($_POST['ejemplares']) ? $_POST['ejemplares'] : 1;
  4. $zona = isset($_POST['envio']) ? $_POST['envio'] : España;
  5. $España = 9;
  6. $Sudamerica = 20;
  7.        
  8. $base = $ejemplar*10;
  9. $descuento = $base*3/100;
  10. $totaldescuento = $base-$descuento;
  11. $iva = $totaldescuento*18/100;
  12. $total = $totaldescuento+$iva;
  13. $totales = $total+$zona;
  14.  
  15. echo "Base imponible: ".$base."<br>";
  16. echo "Descuento 3%: ".$totaldescuento."<br>";
  17. echo "Iva 18%: ".$iva."<br>";
  18. echo "Total Euros sin transporte: ".$total."<br>";
  19. echo "Gastos de envío: ".$zona."<br>";
  20. echo "Total Euros con transporte: ".$totales."<br>";
  21.  
  22.  
  23. ?>
  #2 (permalink)  
Antiguo 03/01/2012, 06:10
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años
Puntos: 326
Respuesta: Acabando sistema de cálculos,

Veamos:

Código PHP:
$zona = isset($_POST['envio']) ? $_POST['envio'] : España
Las cadenas de texto, tienen que ir entre comillas... deberias poner algo así
Código PHP:
$zona = isset($_POST['envio']) ? $_POST['envio'] : 'España'
Ahora, podrías añadir una "variable" q fuera "$gastosEnvio", y podría ser algo así

Código PHP:
if( $zona == 'España' $gastosEnvio 9;
else 
$gastosEnvio 20//Presupongo q solo puede ser España/Sudamerica 
Y esa seria la variable para sumar al precio, y mostrar en gastos de envio (en vez de zona)
__________________
>> Eleazan's Source
>> @Eleazan
  #3 (permalink)  
Antiguo 03/01/2012, 06:27
Avatar de jors_11  
Fecha de Ingreso: marzo-2011
Ubicación: Granollers
Mensajes: 79
Antigüedad: 13 años, 1 mes
Puntos: 2
Respuesta: Acabando sistema de cálculos,

Muchas gracias, si en principio solo sería estos dos, pero si quiero poner más ¿Que debería hacer?
  #4 (permalink)  
Antiguo 03/01/2012, 08:02
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años
Puntos: 326
Respuesta: Acabando sistema de cálculos,

Podrías hacer algo así:

Código PHP:
$gastos['España'] = 9;
$gastos['Argentina'] = 15;
$gastos['Peru'] = 20;

echo 
$gastos[$zona]; //Si zona es "España", imprime 9.. Argentina, 15 y peru 20. 
Así tendrías los gastos en un array, y dependiendo de zona, mostrarias / sumarias los gastos de envio :)
__________________
>> Eleazan's Source
>> @Eleazan
  #5 (permalink)  
Antiguo 03/01/2012, 08:45
Avatar de jors_11  
Fecha de Ingreso: marzo-2011
Ubicación: Granollers
Mensajes: 79
Antigüedad: 13 años, 1 mes
Puntos: 2
Respuesta: Acabando sistema de cálculos,

Me interesa mucho aprender lo del array porque seguro que tendré que incluir más países.
Pero antes le podrías hacer un repaso a la condición if? No me calcula el valor, lo he escrito bien?
Y referente al tema del array como le pongo el echo?



Código PHP:
Ver original
  1. <?php
  2.  
  3. $ejemplar = isset($_POST['ejemplares']) ? $_POST['ejemplares'] : 1;
  4. $zona = isset($_POST['envio']) ? $_POST['envio'] : 'España';
  5.  
  6. if( $zona == 'España')
  7. {
  8. echo $gastosEnvio = 9;
  9. }
  10. else  
  11. {
  12. echo $gastosEnvio = 20;
  13. }
  14.  
  15. $base = $ejemplar*10;
  16. $descuento = $base*3/100;
  17. $totaldescuento = $base-$descuento;
  18. $iva = $totaldescuento*18/100;
  19. $total = $totaldescuento+$iva;
  20. $totales = $total+$zona;
  21.  
  22. echo "Base imponible: ".$base."<br>";
  23. echo "Descuento 3%: ".$totaldescuento."<br>";
  24. echo "Iva 18%: ".$iva."<br>";
  25. echo "Total Euros sin transporte: ".$total."<br>";
  26. echo "Gastos de envío: ".$gastosEnvio."<br>";
  27. echo "Total Euros con transporte: ".$totales."<br>";
  28.  
  29.  
  30. ?>
  #6 (permalink)  
Antiguo 03/01/2012, 09:01
 
Fecha de Ingreso: agosto-2011
Ubicación: Viña del Mar, Chile
Mensajes: 311
Antigüedad: 12 años, 8 meses
Puntos: 50
Respuesta: Acabando sistema de cálculos,

aquí te respondí:
http://www.forosdelweb.com/f18/calculos-php-967648/

no deberías abrir dos temas iguales y menos a 3 horas de haber posteado el primero...

Saludos y paciencia..
__________________
He aprendido mucho y sigo aprendiendo cada día aquí...así que ayudo cuando puedo para disminuir mi deuda XD..
mi hobby

Etiquetas: formulario, html, sistema, variables, usuarios
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:19.