Ver Mensaje Individual
  #1 (permalink)  
Antiguo 28/03/2017, 02:11
mensajeescrito
 
Fecha de Ingreso: mayo-2012
Mensajes: 760
Antigüedad: 12 años, 7 meses
Puntos: 5
Contar de manera acumulativa los campos rellenados en cada envio del formulario

Hola amigas/os, a ver si me pudieran ayudar con esto que me lleva de cabeza, les explico.

Tengo un formulario con 3 campos inputs que cuando le doy al botón enviar. Existe un contador

que me indica las veces que ha sido enviado dicho formulario. Y esto lo hace bien.

El problema es que me debe contar, de manera acumulativa, los campos rellenados en cada vez que se envia el formulario.

Es decir:

Rellenamos el formulario la primera vez:

Antes de enviar el formulario relleno uno de los 3 campos y le doy al boton enviar.

Con lo cual el formulario, el contador cuenta que ha sido enviado el formulario 1 vez y

que se ha rellenado 1 campo input.



Rellenamos el formulario una segunda vez:

Volvemos a rellenar un campo input y le damos otra vez al boton enviar.

Con lo cual el formulario, el contador cuenta que ha sido enviado 2 veces y

que se han rellenado 2 campos input (el de la vez pasada y el de ahora, osea de manera acumulativa).

Y esto de hacerlo de manera acumulativa es lo que no me funciona.


Y así tantas veces como rellenemos y enviemos el formulario

El pongo el codigo que he hecho hasta ahora:

Código PHP:
Ver original
  1.  
  2.  
  3.         //CONTADOR DE ENVIOS DEL FORMULARIO
  4.        
  5.         $contador = (isset($_POST["contador"])) ? $_POST["contador"] +1 : 0;  
  6.  
  7.  
  8.  
  9.         //CONTADOR DE CAMPOS LLENOS
  10.        
  11.             $array = array();
  12.  
  13.                 for($i=1; $i<=3; $i++)
  14.                
  15.                     {
  16.                         if($_POST['campo_' . $i] != '')
  17.                        
  18.                             {
  19.                                 array_push($array, $_POST['campo_' . $i]);
  20.                                
  21.                                 $_SESSION['contador'] = $array;
  22.                             }  
  23.                     }
  24.  
  25.             echo count($_SESSION['contador']++). "<br/>";
  26.  
  27.  
  28.  
  29.             //COMPROBACION "CONTADOR DE ENVIOS" Y "CAMPOS LLENOS"          
  30.             if($contador == count($_SESSION['contador']++))
  31.            
  32.                 {
  33.                     echo "Van sincronizados<br/>";
  34.                 }
  35.                
  36.                 else
  37.                
  38.                 {
  39.                     echo "No van sincronizados<br/>";                  
  40.                 }
  41.  
  42.  
  43.  
  44.                 //FORMULARIO
  45.             echo "<form action='' method='post' name=''>";
  46.        
  47.  
  48.  
  49.                 for($i=1; $i<=3; $i++)
  50.                
  51.                     {  
  52.                         echo "nombre " . $i . " <input type='text' name='campo_" . $i . "'></br></br>";            
  53.                     }
  54.                    
  55.                    
  56.                    
  57.                 echo "Contador de envios: " . $contador . "<br/>".
  58.  
  59.                     "<input type='hidden' name='contador' value='" . $contador . "' /><br>
  60.                    
  61.    
  62.                     <input type='submit' value='enviar'>";
  63.                    
  64.  
  65.  
  66.             echo "</form>";

Si pudieran ayudarme les estaria muy agradecido por ello.

Gracias.