Ver Mensaje Individual
  #4 (permalink)  
Antiguo 11/10/2016, 10:21
alvaro_trewhela
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Contar textbox con valor mayor de 0

Creo que fuí yo quien entendió mal, lo quieres todo en php:

Código PHP:
Ver original
  1. <html>
  2.     <head>
  3.     </head>
  4.     <body>
  5.         <form method="post" action="">
  6.             <input type="text" name="see[]" value="0" /><br/>
  7.             <input type="text" name="see[]" value="0" /><br/>
  8.             <input type="text" name="see[]" value="0" /><br/>
  9.        
  10.             <input type="submit" value="GO!" name="send" />
  11.         </form><br/><br/>
  12.        
  13.         <?php
  14.  
  15.         if(isset($_POST["send"])){
  16.         $mayor1 = 0;
  17.             for($k=0;$k<sizeof($_POST["see"]);$k++){
  18.             echo $_POST["see"][$k]."<br/>";
  19.                 if(intval($_POST["see"][$k])>1){ $mayor1++; }
  20.             }
  21.         echo "Hay $mayor1 mayor que 1";
  22.         }
  23.         ?>
  24.        
  25.     </body>
  26. </html>

El truquito es ponerle [] al name, para que php lo "lea" como un array

de todos modos, te dejo tanto el js como el php:

Código HTML:
Ver original
  1.     <head>
  2.         <script type="text/javascript">
  3.         function test(){
  4.         var els = document.getElementsByName("see[]");
  5.         var r = 0;
  6.             for(var k=0;k<els.length;k++){
  7.                 if(parseInt(els[k].value)>1){ r++; }
  8.             }
  9.         return r;
  10.         }
  11.         </script>
  12.     </head>
  13.     <body>
  14.         <form method="post" action="">
  15.             <input type="text" name="see[]" value="0" /><br/>
  16.             <input type="text" name="see[]" value="0" /><br/>
  17.             <input type="text" name="see[]" value="0" /><br/>
  18.             <input type="submit" value="ACCION PHP!" name="send" />
  19.         </form><br/><br/>
  20.         <button onclick="alert(test());">ACCION JS!</button><br/><br/>
  21.        
  22.         <?php
  23.  
  24.         if(isset($_POST["send"])){
  25.         $mayor1 = 0;
  26.             for($k=0;$k<sizeof($_POST["see"]);$k++){
  27.             echo $_POST["see"][$k]."<br/>";
  28.                 if(intval($_POST["see"][$k])>1){ $mayor1++; }
  29.             }
  30.         echo "Hay $mayor1 mayor que 1";
  31.         }
  32.         ?>
  33.            
  34.     </body>
  35. </html>

edito: En vez de escribir a mano todos los inputs, te recomiendo usar un bucle for:

Código PHP:
Ver original
  1. $n=35; // nums de inputs.
  2.  
  3. for($k=0;$k<$n;$k++){
  4. echo '<input type="text" name="see[]" value="0" /><br/>';
  5. }


Última edición por alvaro_trewhela; 11/10/2016 a las 12:54