
09/07/2013, 19:28
|
| | Fecha de Ingreso: julio-2013
Mensajes: 174
Antigüedad: 11 años, 8 meses Puntos: 1 | |
Respuesta: Problema con la hora en BD con CURRENT_TIME() Cita:
Iniciado por Rodrhigo Siempre se guardara la hora que tienes en el servidor y no la del cliente porque es el servidor el que inserta una fila.
Ahora bien, existe una función en mysql que se llama date_add en la que puedes añadirle o quitarle minutos,horas,dias..etc de diferencia.
Podrias almacenar la fecha con una hora de diferencia o podrias recuperarla dependiendo de la fecha del cliente.
Si quieres agregarle una hora al momento de la insercción(no recomendable):
Código PHP:
Ver original$hora_extra = 1; if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form")) { $insertSQL = sprintf("INSERT INTO tblcomentarios (nombre, correo, telefono, mensaje, fecha, hora, idnoticia) VALUES (%s, %s, %s, %s, DATE_ADD(NOW(), INTERVAL $hora_extra HOUR), TIME(DATE_ADD(NOW(), INTERVAL $hora_extra HOUR)), %s)", GetSQLValueString($_POST['nombre'], "text"), GetSQLValueString($_POST['correo'], "text"), GetSQLValueString($_POST['telefono'], "text"), GetSQLValueString($_POST['mensaje'], "text"), GetSQLValueString($_POST['idnoticia'], "int"));
Ahora si quieres recuperarla en función de la hora que tenga el cliente deberias enviar la hora del cliente con ajax.... calcular la $diferencia horaria en el servidor y al momento de traerlo agregar un date_add con un intervalo igual a $diferencia.
Claro, tiene lógica eso. Tendré que ponerme a aprender y practicar un poco de ajax que aun no lo he tocado.
Gracias por la info. |