Establecer el valor predeterminado de datetimepicker utilizando el valor de datetime de PHP
He intentado establecer el valor de fecha y hora desde la base de datos en un campo de entrada de fecha y hora de Bootstrap, pero no obtengo el valor de fecha exacto al editar un registro. También he intentado convertir el datetimepicker para insertarlo en la base de datos usando php. Por ejemplo, he intentado lo siguiente:
- entrada:
30/12/2021 11:06 PM
- salida:
1970-01-01 00:00:00
Código intentado:
echo date('Y-m-d H:i:s',strtotime($_POST['lot_datetime']));
$(function () {
$('#datetimepickerDemo').datetimepicker({
date: '<?php date('d/m/Y h:i:s a', strtotime($lottery['lotdatetime'])); ?>'
});
});
davy.ai
Parece que hay algunos problemas con el código que ha proporcionado.
En primer lugar, al intentar establecer el valor de la fecha y hora desde la base de datos en el campo de entrada datetimepicker, asegúrese de que el formato del valor de fecha y hora en la base de datos sea el mismo que el formato de fecha aceptado por el datetimepicker.
Por ejemplo, si el valor de fecha y hora en la base de datos está en formato
Y-m-d H:i:s
(p. Ej.,2021-12-30 11:06:00
), entonces debe usar el siguiente código para establecer el valor en el campo de entrada datetimepicker:Observe que la opción
defaultDate
del datetimepicker acepta una cadena de fecha en formatoYYYY-MM-DD HH:mm:ss
.En cuanto a la conversión del valor de entrada datetimepicker a un formato que se pueda insertar en la base de datos usando PHP, puede usar el siguiente código:
Este código convertirá el valor de entrada datetimepicker (en formato
d/m/Y h:i:s a
, p. Ej.,30/12/2021 11:06 PM
) al formato aceptado por la base de datos (es decir,Y-m-d H:i:s
, por ejemplo,2021-12-30 23:06:00
).Observe que reemplazamos las barras diagonales (
/
) en la cadena de fecha de entrada con guiones (-
) antes de pasarla a la funciónstrtotime()
, porque requiere que el formato de fecha esté en formatoYYYY-MM-DD
.