Foros del Web » Programando para Internet » PHP »

Suma Dinamica

Estas en el tema de Suma Dinamica en el foro de PHP en Foros del Web. Señores buenas noches. Aqui una duda. Tengo un formulario que al inicio te pregunta cuantos talones quieres sumar al ponerle el numero ya sea por ...
  #1 (permalink)  
Antiguo 28/11/2007, 20:03
Avatar de Chikis
Usuario no validado
 
Fecha de Ingreso: agosto-2001
Ubicación: Cuernavaca, Morelos, Mexico
Mensajes: 170
Antigüedad: 22 años, 8 meses
Puntos: 0
Mensaje Suma Dinamica

Señores buenas noches.

Aqui una duda.

Tengo un formulario que al inicio te pregunta cuantos talones quieres sumar al ponerle el numero ya sea por ejemplo 4

un while genera 4 campos de texto con el nombre TA1 - TA2 - TA3 - TA4

y asi incrementando o decreciendo el numero de text areas segun se elija el numero de talones

eso esta facil para mi

pero cuando mando el formulario me gustaria que automaticamente sume los valores de los x numeros de text area por ejemplo:

$total = TA1 + TA2 + TA3 + TA4;
echo"$total";

me imagino que es un while pero la verdad es que no entiendo como hacerlo.

Espero que este claro y que pudieran aconsejarme.

Saludos y gracias!!
  #2 (permalink)  
Antiguo 28/11/2007, 20:46
 
Fecha de Ingreso: mayo-2006
Ubicación: Madrid
Mensajes: 153
Antigüedad: 18 años
Puntos: 3
Re: Suma Dinamica

En la página que recoja el formulario tienes que obtener las variables de la siguiente manera:

Si las has pasado por POST: $_POST['TA1']

Si las has pasado por GET: $_GET['TA1];

la variable $total te quedaría (suponiendo que las has pasado con GET):

$total = $_GET['TA1'] + $_GET['TA2'] + $_GET['TA3'] + $_GET['TA4'];

Si quieres que lo sume sin tener que procesar el formulario en otra página, necesitas usar JavaScript.

Saludos!!
  #3 (permalink)  
Antiguo 28/11/2007, 21:40
Avatar de Chikis
Usuario no validado
 
Fecha de Ingreso: agosto-2001
Ubicación: Cuernavaca, Morelos, Mexico
Mensajes: 170
Antigüedad: 22 años, 8 meses
Puntos: 0
Re: Suma Dinamica

Si con eso de la suma no tengo duda

solo sumo las variables, pero lo que comento es que las variables pueden ser de 1 a 1000.. x numro de variables

entonces la pagina del formulario define cuantas variables van a hacer


Si son 4

maneja: TA1 TA2 TA3 TA4

pero si son 8

maneja: TA1 TA2 TA3 TA4 TA5 TA6 TA7 TA8

si son 5

maneja TA1 TA2 TA3 TA4 TA5

Mira mi codigo del formulario es =

Código PHP:
<form id="form" name="form" method="post" action="capturar_datos.php">
<?php
// $numtal es un numero del 1 al 10 por ejemplo que viene de otra pagina por medio de GET
$talones $numtal;
while ( 
$talones <= 10) {
?>
  <input type="text" name="<? echo"TA$talones "?>" />
<?
$talones
++;
}
?>
<input type="text" name="numtal" value="<? echo"$numtal"?>" />
la bronca para mi viene en la pagina capturar_datos.php

la pagina la podria manejar asi

Código PHP:
<?
$talones 
$numtal;
//aqui recibo de nuevo cuantas variables van a ser capturadas
$total 

//AQUI ES MI PROBLEMA COMO HACER QUE SE SUMEN LAS VARIABLES QUE GENERO EL FORMULARIO

echo"$total";
espero que asi quede mas claro

saludos!!
  #4 (permalink)  
Antiguo 28/11/2007, 21:43
Avatar de jorgedx  
Fecha de Ingreso: junio-2005
Ubicación: Chile, Los Andes
Mensajes: 406
Antigüedad: 18 años, 10 meses
Puntos: 4
Re: Suma Dinamica

Código PHP:
<input type="text" name="numtal[]" value="<? echo"$numtal"?>" />

luego numtal[] se maneja como un array...
__________________
Nuevamente a las pistas ...
  #5 (permalink)  
Antiguo 28/11/2007, 22:29
 
Fecha de Ingreso: junio-2006
Mensajes: 270
Antigüedad: 17 años, 10 meses
Puntos: 0
Re: Suma Dinamica

O lo haces con arrays, o lo haces enviando el numero de campos.
Crea un campo oculto en el html que sea el numero de campos que has creado. Luego lo envias, y lo procesas:
Código PHP:
for ($i 0$_POST['campo_oculto']; i++){} 
El unico inconveniente es que alguien te puede tocar las narices y modificar el campo oculto a la hora de enviar el formulario. Por tanto, haz un isset($_POST['TAR[i]' ]), por si acaso para que no te de problemas.
P.D: Creo que sabras como crear el campo y meterle el numero de elementos... Simplemente en value le pones un codigo php que te devuelva el numero de campos..
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 08:24.