PHP - Guardar cronómetro en MySQL

   
Vista:

Guardar cronómetro en MySQL

Publicado por Damian (62 intervenciones) el 03/11/2014 13:43:51
Hola, tengo un cronómetro funcionando en JavaScript y que lo muestro desde php, con el siguiente código:
1
echo "<h2 class='NroPreg' id='crono'>00:00:00</h2>";
. Todo anda perfecto. Ahora lo que no puedo hacer es guardarlo en MySQL. Quiero que al seleccionar un botón se pueda guardar el tiempo que marcaba en ese momento el cronómetro (por ejemplo '00:00:20').
El código del formulario en dónde esta ese cronómetro es:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
echo "<form id='frJgo2' name='frJgo2' method='post' action=''>";
	   echo "<div id='txtPreg'>";
	   echo "<h2 class='NroPre
g'>Pregunta número ".$_SESSION['Pnro']." - Usuario: ".$_SESSION['usr']."</h2>";
	   echo "<h2 class='NroPreg' id='crono'>00:00:00</h2>";
	   echo "<input type='hidden' name='crono' id='crono' value='00:00:00'>";
	   echo "<h2 class='subtitulo' style='padding:5px;background-color:#FFF;border:1px dashed #09C;border-radius:7px;border-bottom:#930 solid 1px'>".$_SESSION['Preg']."</h2>";
	   	$sql="select NroOpcion,NroPreg,Opcion,Correcto from opc_preg where NroPreg=".$_SESSION['Pnro']." order by NroOpcion";
			$stm1=mysql_query($sql);
		while($row=mysql_fetch_assoc($stm1)) {
			echo "<span id='Opc'><input type='radio' name='radio' id='radio' value='".$row['NroOpcion']."'> <span style='color:#036'>".trim($row['NroOpcion'].")</span> ".$row['Opcion']);
			echo "<br>";
		}
			echo "</span>";
			echo "<p style='text-align:center'>";
			echo "<input type='submit' name='Respuesta' id='Respuesta' value='Responder'>";
			$_SESSION['Cant']++;
		echo "</p></div></form>";
En el input (hidden) guardaría el cronómetro. Pero no se si se puede dos id iguales (digo por el id del <h2> qué es donde lo muestra y el del 'hidden' para luego recuperar su valor). También probe de dejar en su value vació ('') y no pasa nada tampoco.

Luego recupero los datos cuando se selecciona el botón 'Respuesta':
1
2
3
4
5
6
7
8
if (isset($_POST['Respuesta'])){
...
$_SESSION['tiempo']=$_POST['crono'];
...
$sql = "INSERT INTO est_user (CodUser,NroPreg,Temporizador,Respuesta,FechaJugada) VALUES (".$_SESSION['cod'].",".$_SESSION['Pnro'].",'".$_SESSION['tiempo']."','".$NroOp."','".$fecha2."')";
   if (!mysql_query($sql,$cxn)) {
  	die('Error: ' . mysql_error($cxn));}
}

Decir que en MySQL el campo 'Temporizador' es de tipo 'Time'. Pero al revisar que me guarda siempre me pone 00:00:00, o sea no me guarda el tiempo que pasó antes de hacer click en 'Respuesta' (por ejemplo 00:00:20). Y es lo que necesito.
Espero se entienda. Sólo quiero recuperar ese cronómetro con el tiempo transcurrido.
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

Guardar cronómetro en MySQL

Publicado por Damian (62 intervenciones) el 04/11/2014 22:21:17
Bueno lo pude solucionar de la siguiente manera.
1
2
3
4
5
if (isset($_POST['Respuesta'])){
....
$_SESSION['tiempo']=strtotime($fecha2)-strtotime($_POST['crono2']);
...
}

En donde el crono2 es un
1
<input type='hidden' id='crono2' name='crono2' value='$fecha2'>
que está en el formulario y que guarda la fecha:
1
$fecha2=date("Y/m/d H:i:s");
.
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
Imágen de perfil de xve

Guardar cronómetro en MySQL

Publicado por xve (5520 intervenciones) el 05/11/2014 08:28:17
Gracias por compartirlo Damian!!!
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