Foros del Web » Programando para Internet » PHP »

Como hago este programa :(

Estas en el tema de Como hago este programa :( en el foro de PHP en Foros del Web. Hola, llevo horas y horas, tratando de hacer este programa. Una compañía de seguros tiene contratados a n vendedores. Cada uno hace tres ventas a ...
  #1 (permalink)  
Antiguo 27/07/2011, 19:39
 
Fecha de Ingreso: julio-2010
Mensajes: 191
Antigüedad: 13 años, 9 meses
Puntos: 2
Como hago este programa :(

Hola, llevo horas y horas, tratando de hacer este programa.

Una compañía de seguros tiene contratados a n vendedores. Cada uno hace tres ventas a la semana. Su política de pagos es que un vendedor recibe un sueldo base, y un 10% extra por comisiones de sus ventas. El gerente de su compañía desea saber cuanto dinero obtendrá en la semana cada vendedor por concepto de comisiones por las tres ventas realizadas, y cuanto tomando en cuenta su sueldo base y sus comisiones.

HACERLO CON HACER-MIENTRAS

tengo este codigo

Código PHP:
Ver original
  1. <html>
  2.     <head>
  3.         <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  4.         <title>Compañía de Seguros</title>
  5.     </head>
  6.     <body bgcolor="#e8eff1">
  7.         <font face="Tw Cen MT">
  8.             <form name="Seguros" action="WHI_Seguros.php" method="POST">
  9.                 Vendedores: <input type="text" name="vendedores" size="10">
  10.                 <input type="submit" value="Calcular">
  11.                 </form>
  12.         <?php
  13.         $i=1;
  14.        
  15.         if(isset($_POST{'vendedores'})){
  16.             $vendedores=$_POST{'vendedores'};            
  17.             while($i<=$vendedores){
  18.                 ?>
  19.             <form name="datos" action="WHI_Seguros.php" method="POST">
  20.                 <BR><BR> VENDEDORES <BR>                
  21.                 venta 1: <input type="text" name="venta1" size="10"><br>
  22.                 venta 2: <input type="text" name="venta2" size="10"><br>
  23.                 Venta 3: <input type="text" name="venta3" size="10"><br><br>
  24.                 Sueldo Base: <input type="text" name="salario" size="10">
  25.             </form>
  26.             <?php
  27.             if(isset($_POST{'venta1'})){
  28.                         $venta1=$_POST{'venta1'};
  29.                 $venta2=$_POST{'venta2'};
  30.                 $venta3=$_POST{'venta3'};
  31.                 $salario=$_POST{'salario'};
  32.             $c=($venta1+$venta2+$venta3)*0.10;
  33.             $tp=$salario+$c;
  34.             echo"NO se: ".$c."<br>";
  35.             echo" no tengo idea".$tp."<br>";
  36.                 $i=$i+1;
  37.             }
  38.             }
  39.         }
  40.            
  41.             ?>
  42.         </font>
  43.     </body>
  44. </html>

Ayudenme porfavor!!!!!!!!!!!!!!!!!!!
  #2 (permalink)  
Antiguo 27/07/2011, 19:56
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 9 meses
Puntos: 793
Respuesta: Como hago este programa :(

Así por encima lo que vi es que estas aumentando el bucle por dentro de un condicional que nunca llegará.

Código PHP:
Ver original
  1. <?php
  2.             if(isset($_POST{'venta1'})){
  3.                         $venta1=$_POST{'venta1'};
  4.                 $venta2=$_POST{'venta2'};
  5.                 $venta3=$_POST{'venta3'};
  6.                 $salario=$_POST{'salario'};
  7.             $c=($venta1+$venta2+$venta3)*0.10;
  8.             $tp=$salario+$c;
  9.             echo"NO se: ".$c."<br>";
  10.             echo" no tengo idea".$tp."<br>";
  11.              
  12.             }  
  13.  
  14.                $i=$i+1;
  15.             }
  16.         }
  17.            
  18.             ?>
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP

Última edición por andresdzphp; 27/07/2011 a las 20:11
  #3 (permalink)  
Antiguo 27/07/2011, 20:39
 
Fecha de Ingreso: mayo-2010
Mensajes: 128
Antigüedad: 13 años, 10 meses
Puntos: 13
Respuesta: Como hago este programa :(

Cita:
Iniciado por l222p Ver Mensaje
Hola, llevo horas y horas, tratando de hacer este programa.

Una compañía de seguros tiene contratados a n vendedores. Cada uno hace tres ventas a la semana. Su política de pagos es que un vendedor recibe un sueldo base, y un 10% extra por comisiones de sus ventas. El gerente de su compañía desea saber cuanto dinero obtendrá en la semana cada vendedor por concepto de comisiones por las tres ventas realizadas, y cuanto tomando en cuenta su sueldo base y sus comisiones.

HACERLO CON HACER-MIENTRAS

tengo este codigo

Código PHP:
Ver original
  1. <html>
  2.     <head>
  3.         <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  4.         <title>Compañía de Seguros</title>
  5.     </head>
  6.     <body bgcolor="#e8eff1">
  7.         <font face="Tw Cen MT">
  8.             <form name="Seguros" action="WHI_Seguros.php" method="POST">
  9.                 Vendedores: <input type="text" name="vendedores" size="10">
  10.                 <input type="submit" value="Calcular">
  11.                 </form>
  12.         <?php
  13.         $i=1;
  14.        
  15.         if(isset($_POST{'vendedores'})){
  16.             $vendedores=$_POST{'vendedores'};            
  17.             while($i<=$vendedores){
  18.                 ?>
  19.             <form name="datos" action="WHI_Seguros.php" method="POST">
  20.                 <BR><BR> VENDEDORES <BR>                
  21.                 venta 1: <input type="text" name="venta1" size="10"><br>
  22.                 venta 2: <input type="text" name="venta2" size="10"><br>
  23.                 Venta 3: <input type="text" name="venta3" size="10"><br><br>
  24.                 Sueldo Base: <input type="text" name="salario" size="10">
  25.             </form>
  26.             <?php
  27.             if(isset($_POST{'venta1'})){
  28.                         $venta1=$_POST{'venta1'};
  29.                 $venta2=$_POST{'venta2'};
  30.                 $venta3=$_POST{'venta3'};
  31.                 $salario=$_POST{'salario'};
  32.             $c=($venta1+$venta2+$venta3)*0.10;
  33.             $tp=$salario+$c;
  34.             echo"NO se: ".$c."<br>";
  35.             echo" no tengo idea".$tp."<br>";
  36.                 $i=$i+1;
  37.             }
  38.             }
  39.         }
  40.            
  41.             ?>
  42.         </font>
  43.     </body>
  44. </html>

Ayudenme porfavor!!!!!!!!!!!!!!!!!!!
Se supone que tienes dos formularios. El primero para indicar cuantos vendedores quieres. El segundo para mostrar los vendedores y especificar las ventas. Y el paso tercero donde se calculan los resultados. Por eso no entiendo porque englobas el segundo formulario con el tercer paso. El While creo que tendría que englobar solo al segundo formulario, asi:

Código:
<form name="datos" action="WHI_Seguros.php" method="POST">
while($i<=$vendedores){
                ?>
            
                <BR><BR> VENDEDORES <BR>                
                venta 1: <input type="text" name="venta1" size="10"><br>
                venta 2: <input type="text" name="venta2" size="10"><br>
                Venta 3: <input type="text" name="venta3" size="10"><br><br>
                Sueldo Base: <input type="text" name="salario" size="10">
           
            <?php
             }
              </form>
Con el form fuera de las llaves, ya que sino te sacaría varios formularios en vez de uno. Luego los nombres de las variables "venta1", "venta2 y "venta3" no deberías llamarlos así, ya que se repetiran y tendras tantos "venta1", "venta2" y "venta3" como vendedores hallas metido. Tendras que llamarlos de forma dinámica, supongo que con indices $i. En el tercer paso tendras que asignar las variables a los POST. Como sabes la cantidad de vendedores que hay (ya que los has metido en el primer formulario) tendras que hacer un for o un while recorriendo cada vendedor e ir asignando las variables. Una vez termine el bucle ya solo te queda hacer los cálculos.
  #4 (permalink)  
Antiguo 27/07/2011, 20:56
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 9 meses
Puntos: 793
Respuesta: Como hago este programa :(

Te hice un código espero que te sirva:

Código PHP:
Ver original
  1. <html>
  2.     <head>
  3.         <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  4.         <title>Compañía de Seguros</title>
  5.     </head>
  6.     <body bgcolor="#e8eff1">
  7.         <font face="Tw Cen MT">
  8.             <form name="Seguros" action="index.php" method="POST">
  9.                 Vendedores: <input type="text" name="vendedores" size="10">
  10.                 <input type="submit" value="Calcular">
  11.                 </form>
  12.         <?php
  13.         $i=1;
  14.        
  15.         if(isset($_POST{'vendedores'})){
  16.             $vendedores=$_POST{'vendedores'};    
  17.             echo '<form name="datos" action="pruebas.php" method="POST">';      
  18.             while($i<=$vendedores){
  19.                 ?>
  20.            
  21.                     <BR><BR> VENDEDOR <?php echo $i; ?> <BR>                
  22.                 venta 1: <input type="text" name="venta1[<?php echo $i; ?>]" size="10"><br>
  23.                 venta 2: <input type="text" name="venta2[<?php echo $i; ?>]" size="10"><br>
  24.                 Venta 3: <input type="text" name="venta3[<?php echo $i; ?>]" size="10"><br><br>
  25.                 Sueldo Base: <input type="text" name="salario[<?php echo $i; ?>]" size="10">
  26.          
  27.             <?php
  28.            
  29.             $i++;
  30.            
  31.             }
  32.             echo '<input type="hidden" name="vdn" value="'.$vendedores.'">';
  33.            
  34.             echo '<br><br><input type="submit" value="Calcular">';
  35.             echo '</form>';
  36.              
  37.            
  38.              }
  39.            
  40.             ?>
  41.         </font>
  42.     </body>
  43. </html>

Esta es la página donde calcula todo pruebas.php

Código PHP:
Ver original
  1. <?php  
  2.  
  3. $vendedores = $_POST['vdn'];
  4. $totalApagar = 0;
  5. $totalApagarC = 0;  
  6. $totalApagarS = 0;
  7.  
  8. for ($i=1; $i<=$vendedores; $i++) {
  9.    
  10.     $com = ($_POST['venta1'][$i]+$_POST['venta2'][$i]+$_POST['venta3'][$i])*0.10;
  11.    
  12.     echo 'Empleado ' . $i . '<br /><br />';
  13.     echo 'Comision: ' . $com;
  14.    
  15.     $totalApagarS += $_POST['salario'][$i];
  16.     $totalApagarC += $com;
  17.     $totalApagar += $com + $_POST['salario'][$i];
  18.    
  19.     echo '<br /><br />Comision + Salario: ' . $com += $_POST['salario'][$i];
  20.     echo '<hr />';
  21.    
  22. }
  23.  
  24. echo 'Total a pagar en salarios: ' . $totalApagarS . '<br />';
  25. echo 'Total a pagar en comisiones: ' . $totalApagarC . '<br />';
  26. echo 'Total a pagar a sus empleados: ' . $totalApagar . '<br />';
  27.  
  28. ?>
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP

Última edición por andresdzphp; 28/07/2011 a las 16:38 Razón: Agregando información
  #5 (permalink)  
Antiguo 28/07/2011, 18:22
 
Fecha de Ingreso: julio-2010
Mensajes: 191
Antigüedad: 13 años, 9 meses
Puntos: 2
Respuesta: Como hago este programa :(

MUCHISISISISISISIMAS GRACIAS!!!

Me funciono perfecto!!!

disculpen mi ignorancia, pero es que no le entiendo muy bien al while

GRACIAS!!!! :)
  #6 (permalink)  
Antiguo 28/07/2011, 18:31
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 9 meses
Puntos: 793
Respuesta: Como hago este programa :(

Cita:
Iniciado por l222p Ver Mensaje
MUCHISISISISISISIMAS GRACIAS!!!

Me funciono perfecto!!!

disculpen mi ignorancia, pero es que no le entiendo muy bien al while

GRACIAS!!!! :)
Me alegro que te haya servido.

Bucle while

http://www.webtaller.com/construccion/lenguajes/php/lecciones/bucle-while-php-como-funciona.php

Mientras (Se cumpla esta condición)
// Hacer esto
Fin Mientras

While () {

}
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #7 (permalink)  
Antiguo 28/07/2011, 19:14
 
Fecha de Ingreso: julio-2010
Mensajes: 191
Antigüedad: 13 años, 9 meses
Puntos: 2
Respuesta: Como hago este programa :(

gracias, lo leeré
  #8 (permalink)  
Antiguo 30/07/2011, 20:18
 
Fecha de Ingreso: julio-2010
Mensajes: 191
Antigüedad: 13 años, 9 meses
Puntos: 2
Respuesta: Como hago este programa :(

Hola @andresdzphp
disculpa que te vuelvo a molestar, pero tengo un problema, estoy haciendo un programa parecido a este que me hiciste.

es un problema de obreros

supongamos que hay 2 obreros, doy calcular y me aparecen 2 cajas de texto para que ingrese las horas que trabajan, luego le doy en calcular de nuevo, pero solo me sale en resultado del segundo obrero, osea que siempre me sale el resultado del ultimo obrero.

me aparece el mismo resultado para los obreros

xq sucede esto?

Etiquetas: html, programa
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 15:24.