PHP - insert-update calculos

   
Vista:

insert-update calculos

Publicado por racingman (14 intervenciones) el 04/10/2012 11:28:22
Buenos días,

Tengo una tabla con jquery-jeditable en el cual tengo 3 columnas. Dos de ellas son editables y el tercero seria la suma de los dos.

Cuando edito uno de ellos lo guarda correctamente en la base de datos, pero lo que quiero es que al editar uno de los campos, me recalcule automaticamente la suma de los dos y me lo muestre en la tercera columna.

Como lo podría hacer?

Muchas gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve

insert-update calculos

Publicado por xve (5525 intervenciones) el 04/10/2012 18:29:18
Nos puedes mostrar el código? sin verlo es un poco complicado.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

insert-update calculos

Publicado por racingman (14 intervenciones) el 05/10/2012 14:40:16
Este seria el código:

index.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
<?php
//inicio de sesion
session_start();
//control de la sesion para guardar el id de la carrera
if (!isset($_SESSION["controlcr"])) {
	$_SESSION["IDCarreracr"] = $_GET["idrcr"];
	$_SESSION["IDTramocr"] = $_GET["idtrcr"];
    $_SESSION["controlcr"] = TRUE;
}
 
if (($_SESSION["controlcr"])==TRUE):
// incluimos la conexión
include("conexion.php");
// creamos la consulta
mysql_query("SET NAMES 'utf8'");
$query = "SELECT * FROM T08Clase INNER JOIN (T07Grupo INNER JOIN (T06Copas RIGHT JOIN (T05Clubes INNER JOIN (T01Carreras INNER JOIN T02Participantes ON T01Carreras.IDCarreraT01 = T02Participantes.IDCarreraT02) ON T05Clubes.IDClubT05 = T02Participantes.IDClubT02) ON T06Copas.IDCCopaT06 = T02Participantes.IDCopaT02) ON T07Grupo.IDGrupoT07 = T02Participantes.IDGrupoT02) ON T08Clase.IDClaseT08 = T02Participantes.IDClaseT02 WHERE (((T02Participantes.IDCarreraT02)=". $_SESSION['IDCarreracr'] .") AND ((T02Participantes.AutorizadoT02)=1)) ORDER BY T02Participantes.DorsalT02";
// enviamos la consulta a MySQL
$queEmp = mysql_query($query, $conexion);
$resEmp = mysql_fetch_array($queEmp);
require('../header.php');
?>
<link rel="stylesheet" type="text/css" href="style.css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="jquery.jeditable.js"></script>
<script type="text/javascript" src="js.js"></script>
	<fieldset id="content">
    	<!--<legend>Editando registros de una tabla con Jeditable plugin jQuery.</legend>-->
		<legend><?php echo $resEmp['NombreCarreraT01'];?></legend>
    	<table width="960" id="mytable" cellspacing="0">
			<thead>
				<tr class="head">
					<th scope="col" width="20"></th>
					<th scope="col" width="220">PILOTO</th>
					<th scope="col" width="220">COPILOTO</th>
					<th scope="col" width="220">VEHICULO</th>
					<th scope="col" width="20">CL.</th>
					<th scope="col" width="20">GR.</th>
					<th scope="col" width="120">SALIDA</th>
					<th scope="col" width="120">META</th>
				</tr>
			</thead>
			<tbody>
				<?php
				//volver al primer registro
				mysql_data_seek ( $queEmp, 0);
				while($resEmp = mysql_fetch_array($queEmp)) {
				$id = $resEmp['IDParticipanteT02'];
				?>
				<tr>
					<td align="center"><?php echo $resEmp['DorsalT02'];?></td>
					<td><?php echo $resEmp['PilotoT02'];?></th>
					<td><?php echo $resEmp['CopilotoT02'];?></th>
					<td><?php echo $resEmp['VehiculoT02'];?></th>
					<td align="center"><?php echo $resEmp['NombreT08'];?></th>
					<td align="center"><?php echo $resEmp['NombreT07'];?></th>
					<td><div class="text" id="Salida-<?php echo $id ?>"><?php echo $resEmp['Salida']?></div></td>
					<td><div class="text" id="Meta-<?php echo $id ?>"><?php echo $resEmp['Meta']?></div></td>
				</tr>
				<?php } ?>
			</tbody>
        </table>
    </fieldset>
<?php
endif;
?>


save.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
include("conexion.php");
 
$data  = explode("-",$_POST['id']);
 
$campo = $data[0]; // nombre del campo
$id    = $data[1]; // id del registro
$value = $_POST['value']; // valor por el cual reemplazar
 
// sql para actualizar el registro
mysql_query("SET NAMES 'utf8'");
$query = mysql_query("UPDATE T02Participantes SET ".$campo." = '".$value."' WHERE IDParticipanteT02 = '".$id."'");
 
echo  $value;
?>


js.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
// JavaScript Document
$(document).ready(function() {
 
	 // ambos procesaran en save.php
 
	 // servira para editar los de tipo input text.
     $('.text').editable('save.php');
 
	 // servira para editar el textarea.
	 $('.textarea').editable('save.php', {
		 type     : 'textarea',
		 submit   : 'OK'
	 });
 
 });
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

insert-update calculos

Publicado por racingman (14 intervenciones) el 05/10/2012 14:55:02
En el index.php despues de:

1
<td><div class="text" id="Meta-<?php echo $id ?>"><?php echo $resEmp['Meta']?></div></td>


me falta poner:
1
<td align="center"><?php echo $resEmp['MiliSeg'];?></th>


Lo que tendria que hacer es, al introducir o modificar un valor en cualquier de los 2 campos editables, recalcular los milisegundos de diferencia, guardarlo en la base de datos y actualizar el valor en la casilla que he puesto arriba.

Seria algo como lo de esta pagina:
http://imageshack.us/photo/my-images/854/dibujokac.jpg/
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar