Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] guardar Am y Pm en mysql

Estas en el tema de guardar Am y Pm en mysql en el foro de PHP en Foros del Web. Saludos colegas. Tengo que insertar a mysql el dato hora, Am y Pm, ya puedo ingresar la hora pero ahora el problema viene al guardar ...
  #1 (permalink)  
Antiguo 28/04/2018, 23:45
 
Fecha de Ingreso: abril-2011
Mensajes: 132
Antigüedad: 7 años, 1 mes
Puntos: 5
Pregunta guardar Am y Pm en mysql

Saludos colegas.

Tengo que insertar a mysql el dato hora, Am y Pm, ya puedo ingresar la hora pero ahora el problema viene al guardar en mysql ya que no se como estructurar la bd.

osea como la ingreso tengo que hacer 4 columnas am y pm?

yo la extraigo en un select asi:

Código PHP:
Ver original
  1. <select name="select">
  2. <option  value="<?php echo $_SESSION['Hora']; ?>"> <?php echo $_SESSION['Hora']; ?> </option>
  3. </select>

no se si me haga entender y agradezco su amabilidad
  #2 (permalink)  
Antiguo 29/04/2018, 07:42
 
Fecha de Ingreso: julio-2008
Mensajes: 247
Antigüedad: 9 años, 10 meses
Puntos: 9
Información Respuesta: guardar Am y Pm en mysql

Cita:
Iniciado por dairo65 Ver Mensaje
Saludos colegas.

Tengo que insertar a mysql el dato hora, Am y Pm, ya puedo ingresar la hora pero ahora el problema viene al guardar en mysql ya que no se como estructurar la bd.

osea como la ingreso tengo que hacer 4 columnas am y pm?

yo la extraigo en un select asi:

Código PHP:
Ver original
  1. <select name="select">
  2. <option  value="<?php echo $_SESSION['Hora']; ?>"> <?php echo $_SESSION['Hora']; ?> </option>
  3. </select>

no se si me haga entender y agradezco su amabilidad

No comprendo tu duda. ¿No sabes cómo introducir valores a la base de datos? O lo que preguntas es cómo almacenar un parámetro de "hora" en la base de datos?

En tu base de datos, crea una columna [hora] y la defines como timestamp.
Luego para insertar puedes por ejemplo hacer algo así:

Código PHP:
<?php

$hora 
date("h:i:s-A")

?>
Te devolverá un formato tal que así: 17:20:18 PM (Hora, minutos, segundos). Si buscas en la documentación oficial de PHP la función DATE() podrás ver todas las formas de formatearla fecha y la hora.
__________________
"La diversidad de opiniones crean una perspectiva capaz de ver todas las caras del objeto"
  #3 (permalink)  
Antiguo 29/04/2018, 15:40
 
Fecha de Ingreso: abril-2011
Mensajes: 132
Antigüedad: 7 años, 1 mes
Puntos: 5
Respuesta: guardar Am y Pm en mysql

Cita:
Iniciado por winjose Ver Mensaje
No comprendo tu duda. ¿No sabes cómo introducir valores a la base de datos? O lo que preguntas es cómo almacenar un parámetro de "hora" en la base de datos?

En tu base de datos, crea una columna [hora] y la defines como timestamp.
Luego para insertar puedes por ejemplo hacer algo así:

Código PHP:
<?php

$hora 
date("h:i:s-A")

?>
Te devolverá un formato tal que así: 17:20:18 PM (Hora, minutos, segundos). Si buscas en la documentación oficial de PHP la función DATE() podrás ver todas las formas de formatearla fecha y la hora.
Muchas gracias por tu amable respuesta.

Ya se como insertar la hora pero el am y el pm le tengo en un select el cual el usuario escoge el horario de apertura de su negocio por ejemplo;


el sistema tiene varios usuarios en los cuales cada usuario escoge la hora de apertura del negocio, por ejemplo si abre a las 8am y cierra a las 7 pm ,estos datos de am y pm los tengo en un html asi:


Código PHP:
Ver original
  1. <h5 class="titulo">Abierto Desde.</h5>
  2. <select name="select">
  3.           <option value="value1">Am</option>
  4.           <option value="value2">Pm</option>
  5.  </select>
  6.  
  7. <h5 class="titulo">Abierto Hasta.</h5>
  8. <select name="select">
  9.           <option value="value1">Am</option>
  10.           <option value="value2">Pm</option>
  11.  </select>

estos datos los deberia de traer de la bd en al cual si el usuario escoge que abre a las 6:00 pm y cierra a las 4 am(horario nocturno).
aqui es donde no se como organizar mi bd debo de crear 4 columnas una que diga AbrirAm y AbrirPM , CerrarAm, CerrarPm???? o existe alguna forma mas fácil de hacerlo?
  #4 (permalink)  
Antiguo 29/04/2018, 16:20
Avatar de xfxstudios  
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.339
Antigüedad: 2 años, 11 meses
Puntos: 250
Respuesta: guardar Am y Pm en mysql

no veo la necesidad de guardar el am o pm, podrías utilizar un timepicker para la tarea, este enviaría la hora escogida bien sea am o pm y la almacenas en un campo time de tu base de datos, luego solo queda traducirla con las funciones de php como date por ejemplo. De esa maneras controlas mejor las funciones que tengan que trabajar con dichos horarios, o en todoc aso podrias crearte una funcion que realice el trabajo e interprete que hora escogieron, por ejemplo:


Código PHP:
Ver original
  1. $d = "am";//Valor que llega desde tu formulario
  2.  
  3. $pm = [12=>'12',1=>'13',2=>'14',3=>'15',4=>'16',5=>'17',6=>'18',7=>'19',8=>'20',9=>'21',10=>'22',11=>'23'];
  4. $am = [12=>'00',1=>'01',2=>'02',3=>'03',4=>'04',5=>'05',6=>'06',7=>'07',8=>'08',9=>'09',10=>'10',11=>'11'];
  5.  
  6. $time = "1:25:00";//Hora que llega desde ti formulario
  7.  
  8. $ex = explode(":",$time);//descomponemos la hora
  9.  
  10. //Verificamos si el cliente escogió am o pm
  11. if($d=="pm"){
  12.     $ex[0] = $pm[$ex[0]];
  13.     $nueva = implode(":",$ex);
  14. }else{
  15.     $ex[0] = $am[$ex[0]];
  16.     $nueva = implode(":",$ex);
  17. }
  18.  
  19. var_dump($nueva);//Hora formateada para el campo time de tu base de datos

no es la mas optima pero podría servir.

Saludos
__________________
[email protected]
HITCEL
  #5 (permalink)  
Antiguo 29/04/2018, 16:57
 
Fecha de Ingreso: abril-2011
Mensajes: 132
Antigüedad: 7 años, 1 mes
Puntos: 5
Respuesta: guardar Am y Pm en mysql

muchas gracias por sus aportes ya lo solucione.



La zona horaria es GMT -6. Ahora son las 00:31.