Nueva pregunta

Pregunta:

Fecha: 06-03-2019 08:27:18 (En Español)

Como Sumar los Valores de los Checkbox que seleciono[Resuelta]

Buenas necesito ayuda urgente llevo un tiempo tratando de resolver un problema, cree un formulario el cual hace unas consultas a la base de datos y imprime los datos todos estos datos van junto con CHECKBOX el cual tiene como VALUE uno de los datos de la consulta este es el codigo

cam1_pl_p.php

<form action='test' method='POST' ><input type='submit' name='cargar' value='Cargar' style='left: 720px; position: fixed;'><button style='font-size: 16px;'>Camara 1</button><?php 
    include("conexion.php");
    $sql = 'SELECT origen, protocolo, fecha_list,tipo, count(caja) as totalcaja FROM cam1 WHERE palet="Palet 1" GROUP BY protocolo ORDER BY origen, protocolo, fecha_list';
    $result = mysqli_query($conexion, $sql);
    if (mysqli_num_rows($result) > 0) {
        echo "<h1 style='font-size:13px;'>Palet 1</h1>";
        while($row = mysqli_fetch_assoc($result)) {
            printf("<table><td style='border: 1px solid;'><h1 style='font-size: 14px;'>Origen: ".$row['origen']."</h1></td><td style='border: 1px solid;'><h1 style='font-size: 13px;'> Protocolo: ".$row['protocolo']."</h1></td><td style='border: 1px solid;'><h1 style='font-size: 13px;'> Fecha de Listado: ".$row['fecha_list']."</h1></td><td style='border: 1px solid; width: 70px;'><h1 style='font-size: 13px;'>Cajas: ".$row['totalcaja']."</h1></td><td><input type='checkbox' value='".$row['protocolo']."' name='proto[]'  ></td></table>");
            }
        }
        else {
            echo "";
        }
        mysqli_close($conexion);?>
        <?php 
    include("conexion.php");
    $sql = 'SELECT origen, protocolo, fecha_list,tipo, count(caja) as totalcaja FROM cam1 WHERE palet="Palet 2" GROUP BY protocolo ORDER BY origen, protocolo, fecha_list';
    $result = mysqli_query($conexion, $sql);
    
    if (mysqli_num_rows($result) > 0) {
        echo "<h1 style='font-size:13px;'>Palet 2</h1>";
        while($row = mysqli_fetch_assoc($result)) {
            printf("<table><td style='border: 1px solid;'><h1 style='font-size: 14px;'>Origen: ".$row['origen']."</h1></td><td style='border: 1px solid;'><h1 style='font-size: 13px;'> Protocolo: ".$row['protocolo']."</h1></td><td style='border: 1px solid;'><h1 style='font-size: 13px;'> Fecha de Listado: ".$row['fecha_list']."</h1></td><td style='border: 1px solid; width: 70px;'><h1 style='font-size: 13px;'>Cajas: ".$row['totalcaja']."</h1></td><td><input type='checkbox' value='".$row['protocolo']."' name='proto2[]'></td></table>");
            }
        }
        else {
            echo "";
        }
        mysqli_close($conexion);?>
        <?php 
    include("conexion.php");
    $sql = 'SELECT origen, protocolo, fecha_list,tipo, count(caja) as totalcaja FROM cam1 WHERE palet="Palet 3" GROUP BY protocolo ORDER BY origen, protocolo, fecha_list';
    $result = mysqli_query($conexion, $sql);
    if (mysqli_num_rows($result) > 0) {
        echo "<h1 style='font-size:13px;'>Palet 3</h1>";
        while($row = mysqli_fetch_assoc($result)) {
            printf("<table><td style='border: 1px solid;'><h1 style='font-size: 14px;'>Origen: ".$row['origen']."</h1></td><td style='border: 1px solid;'><h1 style='font-size: 13px;'> Protocolo: ".$row['protocolo']."</h1></td><td style='border: 1px solid;'><h1 style='font-size: 13px;'> Fecha de Listado: ".$row['fecha_list']."</h1></td><td style='border: 1px solid; width: 70px;'><h1 style='font-size: 13px;'>Cajas: ".$row['totalcaja']."</h1></td><td><input type='checkbox' value='".$row['protocolo']."' name='proto3[]'></td></table>");
            }
        }
        else {
            echo "";
        }
        mysqli_close($conexion);?>
        <?php 
    include("conexion.php");
    $sql = 'SELECT origen, protocolo, fecha_list,tipo, count(caja) as totalcaja FROM cam1 WHERE palet="Palet 4" GROUP BY protocolo ORDER BY origen, protocolo, fecha_list';
    $result = mysqli_query($conexion, $sql);
    if (mysqli_num_rows($result) > 0) {
        echo "<h1 style='font-size:13px;'>Palet 4</h1>";
        while($row = mysqli_fetch_assoc($result)) {
            printf("<table><td style='border: 1px solid;'><h1 style='font-size: 14px;'>Origen: ".$row['origen']."</h1></td><td style='border: 1px solid;'><h1 style='font-size: 13px;'> Protocolo: ".$row['protocolo']."</h1></td><td style='border: 1px solid;'><h1 style='font-size: 13px;'> Fecha de Listado: ".$row['fecha_list']."</h1></td><td style='border: 1px solid; width: 70px;'><h1 style='font-size: 13px;'>Cajas: ".$row['totalcaja']."</h1></td><td><input type='checkbox' value='".$row['protocolo']."' name='proto4[]'></td></table>");
            }
        }
        else {
            echo "";
        }
        mysqli_close($conexion);?>
        <?php 
    include("conexion.php");
    $sql = 'SELECT origen, protocolo, fecha_list,tipo, count(caja) as totalcaja FROM cam1 WHERE palet="Palet 5" GROUP BY protocolo ORDER BY origen, protocolo, fecha_list';
    $result = mysqli_query($conexion, $sql);
    if (mysqli_num_rows($result) > 0) {
        echo "<h1 style='font-size:13px;'>Palet 5</h1>";
        while($row = mysqli_fetch_assoc($result)) {
            printf("<table><td style='border: 1px solid;'><h1 style='font-size: 14px;'>Origen: ".$row['origen']."</h1></td><td style='border: 1px solid;'><h1 style='font-size: 13px;'> Protocolo: ".$row['protocolo']."</h1></td><td style='border: 1px solid;'><h1 style='font-size: 13px;'> Fecha de Listado: ".$row['fecha_list']."</h1></td><td style='border: 1px solid; width: 70px;'><h1 style='font-size: 13px;'>Cajas: ".$row['totalcaja']."</h1></td><td><input type='checkbox' value='".$row['protocolo']."' name='proto5[]'></td></table>");
            }
        }
        else {
            echo "";
        }
        mysqli_close($conexion);?>
        <?php 
    include("conexion.php");
    $sql = 'SELECT origen, protocolo, fecha_list,tipo, count(caja) as totalcaja FROM cam1 WHERE palet="Palet 6" GROUP BY protocolo ORDER BY origen, protocolo, fecha_list';
    $result = mysqli_query($conexion, $sql);
    if (mysqli_num_rows($result) > 0) {
        echo "<h1 style='font-size:13px;'>Palet 6</h1>";
        while($row = mysqli_fetch_assoc($result)) {
            printf("<table><td style='border: 1px solid;'><h1 style='font-size: 14px;'>Origen: ".$row['origen']."</h1></td><td style='border: 1px solid;'><h1 style='font-size: 13px;'> Protocolo: ".$row['protocolo']."</h1></td><td style='border: 1px solid;'><h1 style='font-size: 13px;'> Fecha de Listado: ".$row['fecha_list']."</h1></td><td style='border: 1px solid; width: 70px;'><h1 style='font-size: 13px;'>Cajas: ".$row['totalcaja']."</h1></td><td><input type='checkbox' value='".$row['protocolo']."' name='proto6[]'></td></table>");
            }
        }
        else {
            echo "";
        }
        mysqli_close($conexion);?>
        <?php 
    include("conexion.php");
    $sql = 'SELECT origen, protocolo, fecha_list,tipo, count(caja) as totalcaja FROM cam1 WHERE palet="Palet 7" GROUP BY protocolo ORDER BY origen, protocolo, fecha_list';
    $result = mysqli_query($conexion, $sql);
    if (mysqli_num_rows($result) > 0) {
        echo "<h1 style='font-size:13px;'>Palet 7</h1>";
        while($row = mysqli_fetch_assoc($result)) {
            printf("<table><td style='border: 1px solid;'><h1 style='font-size: 14px;'>Origen: ".$row['origen']."</h1></td><td style='border: 1px solid;'><h1 style='font-size: 13px;'> Protocolo: ".$row['protocolo']."</h1></td><td style='border: 1px solid;'><h1 style='font-size: 13px;'> Fecha de Listado: ".$row['fecha_list']."</h1></td> <td style='border: 1px solid; width: 70px;'><h1 style='font-size: 13px;'>Cajas: ".$row['totalcaja']."</h1></td><td><input type='checkbox' value='".$row['protocolo']."' name='proto7[]'></td></table>");
            }
        }
        else {
            echo "";
        }
        mysqli_close($conexion);
        echo "<br><button style='font-size: 16px;'>Camara 2</button>";
        ?>
        <?php 
    include("conexion.php");
    $sql = 'SELECT origen, protocolo, fecha_list,tipo, count(caja) as totalcaja FROM cam2 WHERE palet="Palet 1" GROUP BY protocolo ORDER BY origen, protocolo, fecha_list';
    $result = mysqli_query($conexion, $sql);
    if (mysqli_num_rows($result) > 0) {
        echo "<h1 style='font-size:18px;'>Palet 1</h1>";
        while($row = mysqli_fetch_assoc($result)) {
            printf("<table><td style='border: 1px solid;'><h1 style='font-size: 14px;'>Origen: ".$row['origen']."</h1></td><td style='border: 1px solid;'><h1 style='font-size: 13px;'> Protocolo: ".$row['protocolo']."</h1></td><td style='border: 1px solid;'><h1 style='font-size: 13px;'> Fecha de Listado: ".$row['fecha_list']."</h1></td><td style='border: 1px solid; width: 70px;'><h1 style='font-size: 13px;'>Cajas: ".$row['totalcaja']."</h1></td><td><input type='checkbox' value='".$row['protocolo']."' name='proto[]'></td></table>");
            }
        }
        else {
            echo "";
        }
        mysqli_close($conexion);?>
        <?php 
    include("conexion.php");
    $sql = 'SELECT origen, protocolo, fecha_list,tipo, count(caja) as totalcaja FROM cam2 WHERE palet="Palet 2" GROUP BY protocolo ORDER BY origen, protocolo, fecha_list';
    $result = mysqli_query($conexion, $sql);
    
    if (mysqli_num_rows($result) > 0) {
        echo "<h1 style='font-size:18px;'>Palet 2</h1>";
        while($row = mysqli_fetch_assoc($result)) {
            printf("<table><td style='border: 1px solid;'><h1 style='font-size: 14px;'>Origen: ".$row['origen']."</h1></td><td style='border: 1px solid;'><h1 style='font-size: 13px;'> Protocolo: ".$row['protocolo']."</h1></td><td style='border: 1px solid;'><h1 style='font-size: 13px;'> Fecha de Listado: ".$row['fecha_list']."</h1></td><td style='border: 1px solid; width: 70px;'><h1 style='font-size: 13px;'>Cajas: ".$row['totalcaja']."</h1></td><td><input type='checkbox' value='".$row['protocolo']."' name='proto2[]'></td></table>");
            }
        }
        else {
            echo "";
        }
        mysqli_close($conexion);?>
        <?php 
    include("conexion.php");
    $sql = 'SELECT origen, protocolo, fecha_list,tipo, count(caja) as totalcaja FROM cam2 WHERE palet="Palet 3" GROUP BY protocolo ORDER BY origen, protocolo, fecha_list';
    $result = mysqli_query($conexion, $sql);
    if (mysqli_num_rows($result) > 0) {
        echo "<h1 style='font-size:18px;'>Palet 3</h1>";
        while($row = mysqli_fetch_assoc($result)) {
            printf("<table><td style='border: 1px solid;'><h1 style='font-size: 14px;'>Origen: ".$row['origen']."</h1></td><td style='border: 1px solid;'><h1 style='font-size: 13px;'> Protocolo: ".$row['protocolo']."</h1></td><td style='border: 1px solid;'><h1 style='font-size: 13px;'> Fecha de Listado: ".$row['fecha_list']."</h1></td><td style='border: 1px solid; width: 70px;'><h1 style='font-size: 13px;'>Cajas: ".$row['totalcaja']."</h1></td><td><input type='checkbox' value='".$row['protocolo']."' name='proto3[]'></td></table>");
            }
        }
        else {
            echo "";
        }
        mysqli_close($conexion);?>
        <?php 
    include("conexion.php");
    $sql = 'SELECT origen, protocolo, fecha_list,tipo, count(caja) as totalcaja FROM cam2 WHERE palet="Palet 4" GROUP BY protocolo ORDER BY origen, protocolo, fecha_list';
    $result = mysqli_query($conexion, $sql);
    if (mysqli_num_rows($result) > 0) {
        echo "<h1 style='font-size:18px;'>Palet 4</h1>";
        while($row = mysqli_fetch_assoc($result)) {
            printf("<table><td style='border: 1px solid;'><h1 style='font-size: 14px;'>Origen: ".$row['origen']."</h1></td><td style='border: 1px solid;'><h1 style='font-size: 13px;'> Protocolo: ".$row['protocolo']."</h1></td><td style='border: 1px solid;'><h1 style='font-size: 13px;'> Fecha de Listado: ".$row['fecha_list']."</h1></td><td style='border: 1px solid; width: 70px;'><h1 style='font-size: 13px;'>Cajas: ".$row['totalcaja']."</h1></td><td><input type='checkbox' value='".$row['protocolo']."' name='proto4[]'></td></table>");
            }
        }
        else {
            echo "";
        }
        mysqli_close($conexion);?>
        <?php 
    include("conexion.php");
    $sql = 'SELECT origen, protocolo, fecha_list,tipo, count(caja) as totalcaja FROM cam2 WHERE palet="Palet 5" GROUP BY protocolo ORDER BY origen, protocolo, fecha_list';
    $result = mysqli_query($conexion, $sql);
    if (mysqli_num_rows($result) > 0) {
        echo "<h1 style='font-size:18px;'>Palet 5</h1>";
        while($row = mysqli_fetch_assoc($result)) {
            printf("<table><td style='border: 1px solid;'><h1 style='font-size: 14px;'>Origen: ".$row['origen']."</h1></td><td style='border: 1px solid;'><h1 style='font-size: 13px;'> Protocolo: ".$row['protocolo']."</h1></td><td style='border: 1px solid;'><h1 style='font-size: 13px;'> Fecha de Listado: ".$row['fecha_list']."</h1></td><td style='border: 1px solid; width: 70px;'><h1 style='font-size: 13px;'>Cajas: ".$row['totalcaja']."</h1></td><td><input type='checkbox' value='".$row['protocolo']."' name='proto5[]'></td></table>");
            }
        }
        else {
            echo "";
        }
        mysqli_close($conexion);?>
        <?php 
    include("conexion.php");
    $sql = 'SELECT origen, protocolo, fecha_list,tipo, count(caja) as totalcaja FROM cam2 WHERE palet="Palet 6" GROUP BY protocolo ORDER BY origen, protocolo, fecha_list';
    $result = mysqli_query($conexion, $sql);
    if (mysqli_num_rows($result) > 0) {
        echo "<h1 style='font-size:18px;'>Palet 6</h1>";
        while($row = mysqli_fetch_assoc($result)) {
            printf("<table><td style='border: 1px solid;'><h1 style='font-size: 14px;'>Origen: ".$row['origen']."</h1></td><td style='border: 1px solid;'><h1 style='font-size: 13px;'> Protocolo: ".$row['protocolo']."</h1></td><td style='border: 1px solid;'><h1 style='font-size: 13px;'> Fecha de Listado: ".$row['fecha_list']."</h1></td><td style='border: 1px solid; width: 70px;'><h1 style='font-size: 13px;'>Cajas: ".$row['totalcaja']."</h1></td><td><input type='checkbox' value='".$row['protocolo']."' name='proto6[]'></td></table>");
            }
        }
        else {
            echo "";
        }
        mysqli_close($conexion);?>
        <?php 
    include("conexion.php");
    $sql = 'SELECT origen, protocolo, fecha_list,tipo, count(caja) as totalcaja FROM cam2 WHERE palet="Palet 7" GROUP BY protocolo ORDER BY origen, protocolo, fecha_list';
    $result = mysqli_query($conexion, $sql);
    if (mysqli_num_rows($result) > 0) {
        echo "<h1 style='font-size:18px;'>Palet 7</h1>";
        while($row = mysqli_fetch_assoc($result)) {
            printf("<table><td style='border: 1px solid;'><h1 style='font-size: 14px;'>Origen: ".$row['origen']."</h1></td><td style='border: 1px solid;'><h1 style='font-size: 13px;'> Protocolo: ".$row['protocolo']."</h1></td><td style='border: 1px solid;'><h1 style='font-size: 13px;'> Fecha de Listado: ".$row['fecha_list']."</h1></td> <td style='border: 1px solid; width: 70px;'><h1 style='font-size: 13px;'>Cajas: ".$row['totalcaja']."</h1></td><td><input type='checkbox' value='".$row['protocolo']."' name='proto7[]'></td></table>");
            }
        }
        else {
            echo "";
        }
        mysqli_close($conexion);
        echo "<br><button style='font-size: 16px;'>Camara 3</button>";?>
</form>



disculpen lo repetitivo del código, como verán el código imprime una serie de datos y un checkbox ahora viene mi gran problema entre esos datos hay un que se llama $row['totalcaja'] bueno yo necesito que cada vez que seleccione un checkbox automáticamente tome el valor de totalcaja de esa linea y lo vaya sumando con el otro totalcaja de los otros checkbox que son seleccionados

formulo nuevamente mi pregunta como puedo hacer para que al momento de dar Click en el checkbox el valor totalcaja de ese checkbox se vaya sumando con el de los otros checkbox seleccionados y imprimirlo en pantalla cada

Agradezco Cualquier ayuda
Etiquetas: AJAX - Javascript - JQuery - MySQL - PHP Votos: 1 - Respuestas: 8 - Vistas: 13 Compartir en: Google Facebook Twitter LinkedIn Link
 

Respuestas:

  • Fecha: 06-03-2019 11:33:43 he estado intentando usar esta funcion de ajax pero no logro que funcione estoy tratando de que la función resulte con onchange o click pero no me funciona no se que tendría mal esta es la función

     <script>
                $(document).ready(function(){
                    $('#check').onchange(function(){
                        var protocolo = [];
    
                        $('.get_value').each(function(){
                            if($(this).is(':checked'))
                            {
                                protocolo.push()($(this).val());
                            }
                        });
                        protocolo = protocolo.toString();
    
                        $.ajax({
                            url:"total.php",
                            method:"POST",
                            data:{protocolo:protocolo},
                            success:function(){
                                $('#result').html(data);
                            }
                        });
                    });
                });
    
            </script>


     <script>
                $(document).ready(function(){
                    $('#check').click(function(){
                        var protocolo = [];
    
                        $('.get_value').each(function(){
                            if($(this).is(':checked'))
                            {
                                protocolo.push()($(this).val());
                            }
                        });
                        protocolo = protocolo.toString();
    
                        $.ajax({
                            url:"total.php",
                            method:"POST",
                            data:{protocolo:protocolo},
                            success:function(){
                                $('#result').html(data);
                            }
                        });
                    });
                });
    
            </script>


    he estado intentando usar esta funcion de ajax pero no logro que funcione estoy tratando de que la función resulte con onchange o click pero no me funciona no se que tendría mal esta es la función

      Votos: 0 - Link respuesta
     
  • Fecha: 08-03-2019 18:04:59 Hola Yerlin:

    A ver si he entendido bien tu problema:
    - Necesitas sumar los valores de $row['totalcaja'] de los diferentes palets según los tengamos tildados.

    Creo que no es necesario montar tantas tablas sino líneas de una sola tabla.
    (Simplifico lo que hace a la consulta de las tablas con los while corespondientes)

    Para recorrer los valores y dado que trabajas JQuery haríamos:
    1.- Asignar un id a la tabla
    2.- Los valores de los checkbox serían los valores $row['totalcaja']
    3.- Recorrer los checkboxs tildados (checked) de la forma siguiente:

    <table>
    	<thead id="valores_protocolo">
    		<tr>
    			<th>Origen</th>
    			<th>Protocolo</th>
    			<th>Fecha de Listado</th>
    			<th>Cajas</th>
    			<th>Checkbox</th>
    		</tr>
    	</thead>
    	<!-- A continuación desarrollamos las filas -->
    
    <?php
    // Consulta a la tabla y el while correspondiente
     echo "
    <tr>
    	<td>".$row['origen']."</td>
    	<td>".$row['protocolo']."</td>
    	<td>".$row['fecha_list']."</td>
    	<td>".$row['totalcaja']."</td>
    	<td><input type='checkbox' value='".$row['totalcaja']."' name='proto1[]'></td>
    </tr>";
    // Nueva consulta con su while
    echo "
    <tr>
    	<td>".$row['origen']."</td>
    	<td>".$row['protocolo']."</td>
    	<td>".$row['fecha_list']."</td>
    	<td>".$row['totalcaja']."</td>
    	<td><input type='checkbox' value='".$row['totalcaja']."' name='proto2[]'></td>
    </tr>";
    	// ... //
    ?>
    </table>
    
    <button type=button id="sumar_valores">Sumar Valores</button>
    
    <script>
    	$(function() {
    		$('#sumar_valores').click(function() {
    			//le indicamos que serán valores numéricos
    			var importes = 0;
    			$('#valores_protocolo input[type=checkbox]').each(function() {
    				// Nos cercioramos de que el checbox esté tildado y que sea un valor numérico
    				if (this.checked && !isNaN($(this).val())) {
    					// Vamos sumando los valores
    					importes += Number($(this).val());
    				} else {
    					alert("Solo se admiten  valores numéricos.");
    					return;
    				}
    			})
    			// Ahora importes tendrá el valor de la suma
    			alert('La suma total es ' + importes)
    		})
    	});
    </script>
    
      Votos: 1 - Link respuesta
     
  • Fecha: 11-03-2019 04:27:07 Hola Gracia por la respuesta entiendo el código pero no me ayuda te explico tu colocas como VALUE del checkbox $row['totalcaja'] y yo tengo el valor $row['protocolo'], este valor no puedo cambiar ya que ese dato lo utilizo para hacer una consulta a la base de datos y introducir unos datos en una tabla segun el dato que sea $row['protocolo'], Otro problema es que la sumatoria se hace dandole click a un Boton, yo necesito que la sumatoria la haga cuando le den Click al checkbox seria colocarle al input un Onchange te voy a dejar un ejemplo mas simple de lo que quiero con otro codigo pero el objetivo seria el mismo

    Archivo:test2.php

      <!DOCTYPE html>
    <html lang="es">
    <head>
    	<title></title>
    	<script src="jquery-1.11.2.js"></script>
    </head>
    <body>
    	<table>
    	<td><p>Manzana <input type="checkbox" class="checks" onclick="getValue()" value="1"></p></td>
    	<td><p>Pera <input type="checkbox" class="checks" onclick="getValue()" value="2"></p></td>
    	<td><p>Naranaja <input type="checkbox" class="checks" onclick="getValue()" value="3"></p></td>
    </table>
    	<h1 id="result"></h1>
    </body>
    </html>
    
    <script>
    	function getValue() {
    
    		var checks = document.getElementsByClassName('checks');
    		var str='';
    
    		for (i=0; i<3; i++) {
    
    			if (checks[i].checked === true) {
    				str += checks[i].value +"";
    			}
    		}
    		var proto = str
    		//alert(str);
    		document.getElementById('result').innerHTML=str
    
    		$.ajax({
    			url:"test3.php",
    			method:"POST",
    			data:{proto:proto},
    			success:function(data){
    				$('#result').html(data);
    			}
    		});
    	}
    </script>
    
    


    Archivo:test3.php

      <?php
    	if (isset($_POST["str"])) {
    		echo "Hi";
    	}
    ?>
    


    en este codigo tengo 3 checkbox estos checkbox tiene como valor 1,2,3 ahora al seleccionar un checkbox automáticamente imprime el Value el cual hace perfectamente pero aparte de eso yo quiero llevar ese valor almacenado al archivo test3.php y lo trato de hacer por medio de ajax de modo que si este es enviado y test3.php lo recibe este devuelve un echo con la palabra HI! que debería imprimir en pantalla actualmete el ajax no me funciona no se porque pero si logro que funcione podría hacer la suma de los Value y la devolvería con ajax y se imprimiría en pantalla automáticamente

    mi objetivo en este código es lograr pasar el value de test2.php a test3.php para yo poder crear un proceso de consulta, traer unos valores para luego sumar y el total de la suma devolverlo por ajax a test3.php no se si el ajax no funciona es porque no tengo el script correcto que este (<script src="jquery-1.11.2.js"></script>)

    este ejemplo es mas sencillo y cumple también con el objetivo que quiero Agradezco Cualquier ayuda espero haberme explicado mejor
      Votos: 0 - Link respuesta
     
  • Fecha: 11-03-2019 11:41:16 logre dar con el problema y logre que el ajax Funcionara si tenia el script malo logre colocar el 3.1.1 y funciono y tambien tenia el error que estaba usando el mismo id para imprimir 2 resultados les dejo el codigo para que me ayuden con nuevo problema

    Archivo:test2.php

    
     <!DOCTYPE html>
    <html lang="es">
    <head>
    	<title></title>
    	<script src="jquery-1.11.2.js"></script>
    	<script src="jquery-3.3.1.min.js"></script>
    </head>
    <body>
    	<table>
    	<td><p>Manzana <input type="checkbox" class="checks" onclick="getValue()" value="0502201"></p></td>
    	<td><p>Pera <input type="checkbox" class="checks" onclick="getValue()" value="0502206"></p></td>
    	<td><p>Naranaja <input type="checkbox" class="checks" onclick="getValue()" value="0502203"></p></td>
    </table>
    	<h1 id="result"></h1>
    	<h1 id="result2"></h1>
    </body>
    </html>
    
    <script>
    	function getValue() {
    
    		var checks = document.getElementsByClassName('checks');
    		var str='';
    
    		for (i=0; i<3; i++) {
    
    			if (checks[i].checked === true) {
    				str += checks[i].value +"";
    			}
    		}
    		var proto = str
    
    
    		//alert(str);
    		document.getElementById('result').innerHTML=str
    
    		$.ajax({
    			url:"test3.php",
    			method:"POST",
    			data:{proto:proto},
    			success:function(data){
    				$('#result2').html(data);
    			}
    		});
    	}
    </script>
    


    Archivo: test3.php


     <?php
    	if (isset($_POST["proto"])) {
    	$proto=$_POST['proto'];
    
    		include("conexion.php");
        $sql = "SELECT origen, protocolo, fecha_list, tipo, count(caja) as totalcaja FROM cam1 WHERE protocolo='$proto' GROUP BY protocolo ORDER BY origen, protocolo, fecha_list";
        $result = mysqli_query($conexion, $sql);
        while($row = mysqli_fetch_assoc($result)){
                $v1=$row['totalcaja'];   
            }	
    	}
    ?>
    


    con la corrección que hice ya logro pasar el Value del input y tomar ese valor para hacer una consulta a la base de datos y tomar la cantidad de cajas para almacenarla en una variable ahora mi problema radica aquí, que todo funciona cuando selecciono un checkbox pero si selecciono el segundo se borra todo

    como puedo hacer para que el proceso continue haciendo lo mismo por cada Checkbox que seleccion porque mi objetivo es ir almacenando esos valores de la cantidad de cajas para luego sumarlos todos y imprimirlo por pantalla con ajax

    gracias cualquier ayuda es buena
      Votos: 0 - Link respuesta
     
  •  
      1  
     
    Fecha: 12-03-2019 09:45:16 Primero es aprender un poco de HTML, PHP y MYSQL, las anteriores rrespuestas te dan la solucion, pero debes esforzarte y "aprender" no esperar te resuelvan el trabajo.
    Esta es la forma mas simple

    El "HTML"
    ~~~~~~~~~
    <!DOCTYPE html>
    <html lang="es">
    <head>
    <meta charset="UTF-8">
    <title>SUMANDO 'CHECKBOX'</title>
    <script>
    var total = 0;
    function sume(pr){
    var data = Number(pr.value)
    if(!pr.checked) {data *= -1}
    total+= data
    document.getElementById("tot").value = total
    }
    </script>
    </head>
    <body>
    <form method="post" action="mando.php">
    <fieldset>
    <legend>SELECCION E DATO(s)</legend>
    <input type="checkbox" name= "dat[] "id="pt1" value="19" onclick="sume(this)">Dato #1<br>
    <input type="checkbox" name= "dat[] "id="pt2" value="27" onclick="sume(this)">Dato #2<br>
    <input type="checkbox" name= "dat[] "id="pt3" value="93" onclick="sume(this)"">Dato #3<br>
    <input type="checkbox" name= "dat[] "id="pt4" value="32" onclick="sume(this)"">Dato #4<br>
    <hr>
    <input type="text" name="tot" id="tot">
    <hr>
    <input type="submit" value="MANDE">
    </form>
    </body>
    </html>

    EL PHP
    ~~~~~~
    <?php
    $dat = $_POST['dat'];
    $tot = $_POST['tot'];
    echo "Datos = ".count($dat)."<br>SUMA TOTAL ¢ ".$tot."<hr>";
    $n = 1;
    for($c=0;$c<count($dat);$c++){
    echo $n.") ".$dat[$c]."<br>";
    $n++;}
    ?>

    AHORA MODIFIQUELO A SUS NECESIDADES
    Desde Costa Rica: 'Pura Vida'
      Votos: 1 - Link respuesta
     
  • Fecha: 12-03-2019 11:21:07 disculpen que no me haya sabido explica veo que todos estan sumando los Value´s de los input y no es así, el value solo es un numero de serie que yo tomo para realizar una consulta a BD y de allí traer la cantidad total de cajas bajo ese numero de serie, yo no necesito sumar los values, me explico mejor cuando yo selecciono un checkbox este toma el value y hace una consulta y esta me trae la cantidad de cajas total de ese checkbox ahora necesito que cuando yo seleccione otro checkbox este haga el mismo proceso tome el numero de serie haga la consulta a la BD y me traiga la cantidad total de cajas y a su es le sume las del checkbox anterior espero a ver sido mas claro gracias por su ayuda   Votos: 0 - Link respuesta
     
  •  
      0  
     
    Fecha: 12-03-2019 16:46:56 Pues si tiene esta funcion
    function sume(pr){
    var data = Number(pr.value)

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    HAGA LA MODIFICACION PARA HACER LA CONSULTA A LA BD AQUI

    total+= Respuesta_Suma_De_Las_Cajas (las que cumplieron con
    el codigo "PR" en la BD y plof, listo
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    document.getElementById("tot").value = total
    }
      Votos: 0 - Link respuesta
     
  • Fecha: 13-03-2019 05:25:24 ok cave destacar que mis conocimientos de Java son muy muy pocos, me desenvuelvo mas en php, es por lo cual estoy buscando ayuda aquí hice la modificacion de la consulta por java ya que en java no puedo usar php pero no logro que funcione esta es la modificacion que hice

    <script>
    var total = 0;
    function sume(pr){
    var data = Number(pr.value)
    
    String SQL = "SELECT origen, count(caja) as totalcaja FROM cam1 WHERE Name = data";
    PreparedStatement pstmt = con.prepareStatement(SQL);
    pstmt.setString(1, "unidad");
    ResultSet rs = pstmt.executeQuery();
    
    var data2 = ResultSet rs
    
    if(!pr.checked) {data *= -1}
    total+= data2
    document.getElementById("tot").value = total
    }
    </script>
    


    la verdad es que estoy tratando el script como si fuese php y no si es por eso que no me esta funcionando y no se como realizar la consulta de modo que llame la totalidad de las cajas de ese .pr

    cualquier comentario seria de gran ayuda gracias.
      Votos: 0 - Link respuesta
     
Para participar activamente de la comunidad primero debes autenticarte, ingresa al sistema.Iniciar Sesión
 
frjcbbae garagebible.com