Ver Mensaje Individual
  #1 (permalink)  
Antiguo 21/08/2012, 10:42
Avatar de boggiepopphantom
boggiepopphantom
 
Fecha de Ingreso: agosto-2012
Mensajes: 29
Antigüedad: 11 años, 8 meses
Puntos: 0
Resta con variables tipo time no inserta resultados desde php a mysql

Muy buen día, soy nuevo en "Foros del Web". Este es mi primer tema, si estoy haciéndolo mal, por favor oriéntenme.

Estoy haciendo una base de datos para registrar tiempos; se me ocurrió hacer dos tablas: en la primera registro los tiempos en orden, donde el primer tiempo es el tiempo de salida y, a partir del segundo, son los tiempos de llegada. Mi intención luego es mediante un formulario php, hacer las restas de los tiempos con el primer tiempo, e insertar la diferencia en una segunda tabla, pero que lo inserte en el registro que yo le indique desde el formulario.

Lo de la primera tabla me ha ido sin problema, me guarda los tiempos sin líos, en una variable tipo time; he aquí el código:


Código PHP:
$conexion=mysql_connect("servidor","usuario","password") or die("MySql Error"); 
mysql_select_db("DB",$conexion) or die("database selection error"); 
function 
send_time(){
mysql_query('insert into tabla1 (pos,tiempo) values (NULL,curtime())');

Para lo de la segunda tabla, procuré la siguiente consulta, definiendo previamente las variables position y num con POST, a partir de dos valores que se ingresan en el formulario, pero no hace nada:

Código PHP:
function insert_time($position,$num){
$conexion=mysql_connect("servidor","usuario","password") or die("MySql Error"); 
mysql_select_db("DB",$conexion) or die("database selection error"); 
//Buscamos el campo que registra el tiempo de inicio
$largada=mysql_query('SELECT * FROM tabla1 WHERE pos="1"');
$lar=mysql_fetch_array($largada);
$tin=$lar["tiempo"];//Este es el tiempo de inicio
$row=mysql_query('SELECT * FROM tabla1 WHERE pos=$position');
$tpar=mysql_fetch_array($row);
$pos=$tpar["tiempo"];//Este es el tiempo del participante
$timedif=SUBTIME($pos,$tin);//Esto determina el tiempo que emplea
mysql_query('UPDATE tabla2 SET tc=$timedif WHERE num=$num');

Cuando ingreso los valores en el formulario, la página se actualiza como si aplicara la fórmula, pero al revisar la tabla en phpmyadmin, el campo en el que debería haber guardado la diferencia de tiempos, aparece NULL. No se si el problema es el manejo de las variables de tiempo, o del fetch_array; agradecería por favor me indiquen una manera de solucionar mi problema.

De antemano muchas gracias

Atte
Boggiepopphantom