Autor
|
Tema: como hacer una consulta (año,mes,dia)en un campo datetime (Leído 9,363 veces)
|
RedZer
Desconectado
Mensajes: 666
|
hola de nuevo camaradas tengo una duda quiero hacer una consulta dependiendo de la fecha que se digite pero el campo esta con propiedad datetime es obio que si se digita una fecha comun por ejemplo 2010-12-08 jamas me arojara resultado por que en mi tabla esta asi 2010-12-01 08:30:00 por que el campo tiene date time bueno ustedes me diran cambia el tipo de campo a date y evitate dolores de cabeza el problema es que esa tabla donde se encuentra el campo de tipo date time lo ocupa una agenda prediseñada y si le muevo a date no me guardaria la hora etc etc. entonces mi pregunta es como puedo hacer una consulta a esa tabla omitiendo la hora y sus minutos y que nada mas me quede la pura fecha
|
|
|
En línea
|
Nacido y criado entre gente que enseño a pensar antes de creer a ciegas, Todo me causa curiosidad en el mundo
|
|
|
Shell Root
|
Pues, entonces concatena la hora al seleccionar la fecha, es decir, $sDate = "2010-12-08"; $sNewDate = "2010-12-08"."00:00:00";
Quizás, puede que el componente que usas se pueda personalizar a vuestro gusto. Tendrías que consultar. Edit: Por ejemplo, :http://es.efreedom.com/Question/1-1216564/Mejor-metodo-de-entrada-y-validar-datetime-personalizado-en-forma-PHP
|
|
« Última modificación: 7 Diciembre 2010, 23:31 pm por Shell Root »
|
En línea
|
Te vendería mi talento por poder dormir tranquilo.
|
|
|
RedZer
Desconectado
Mensajes: 666
|
por ejemplo si ago lo que tu dices osea esto $sDate = "2010-12-08"; $sNewDate = "2010-12-08"."00:00:00"ok concateno la fecha con la hora que seria todo en cero el problema vendria cuando yo condiciono con where no cres por que yo ago la busqueda entre rangos entonces la consulta que estoy utilizando es esta conectar(); $reporte=mysql_query("select * FROM reporte WHERE DATE_FORMAT(fecha,'%Y-%m-%d') BETWEEN '$ini' AND '$fin' and asistio='1' "); desconectar();
entonces me IMAGINO quiza toy mal que cuando haga una consulta por ejemplo un rango fecha de inicio "2010-12-08"."00:00:00" y fecha final "2010-12-10"."00:00:00" no me arojara nada ya que en la tabla no hay ni un campo que tenga este tipo de hora oswa ceros "00:00:00" cierto??? o estoy mal
|
|
|
En línea
|
Nacido y criado entre gente que enseño a pensar antes de creer a ciegas, Todo me causa curiosidad en el mundo
|
|
|
bomba1990
|
si deberia arrojar algo, porque el no busca por la hora si no por las fechas.
lo que veo algo extraño es lo dle between pero pruebalo a ver si te funciona.
|
|
|
En línea
|
|
|
|
Graphixx
Desconectado
Mensajes: 1.336
Full Stack Developer
|
echale un vistazo a javascript y depronto logras darle mazo a eso... //archivo: functions.php <?php function js2PhpTime($jsdate){ if(preg_match('@(\d+)/(\d+)/(\d+)\s+(\d+):(\d+)@', $jsdate, $matches)==1){ $ret = mktime($matches[4], $matches[5], 0, $matches[1], $matches[2], $matches[3]); //echo $matches[4] ."-". $matches[5] ."-". 0 ."-". $matches[1] ."-". $matches[2] ."-". $matches[3]; }else if(preg_match('@(\d+)/(\d+)/(\d+)@', $jsdate, $matches)==1){ $ret = mktime(0, 0, 0, $matches[1], $matches[2], $matches[3]); //echo 0 ."-". 0 ."-". 0 ."-". $matches[1] ."-". $matches[2] ."-". $matches[3]; } return $ret; }
function php2JsTime($phpDate){ //echo $phpDate; //return "/Date(" . $phpDate*1000 . ")/"; return date("m/d/Y H:i", $phpDate); }
function php2MySqlTime($phpDate){ return date("Y-m-d H:i:s", $phpDate); }
function mySql2PhpTime($sqlDate){ $arr = date_parse($sqlDate); return mktime($arr["hour"],$arr["minute"],$arr["second"],$arr["month"],$arr["day"],$arr["year"]);
} ?>
//codigo dentro del archivo: wdcalendar/edit.php $sarr = explode(" ", php2JsTime(mySql2PhpTime($event->StartTime))); $earr = explode(" ", php2JsTime(mySql2PhpTime($event->EndTime)));
//para mostrar solo fecha <?php echo isset($event)?$sarr[0]:""; ?> <?php echo isset($event)?$earr[0]:""; ?>
//para mostrar solo la hora <?php echo isset($event)?$sarr[1]:""; ?> <?php echo isset($event)?$earr[1]:""; ?>
El codigo lo tome de esta libreria:http://www.web-delicious.com/jquery-plugins/especificamente del wdcalendar, esta dentro de la carpeta wdcalendar, archivo edithttp://www.web-delicious.com/jquery-plugins-demo/wdCalendar/sample.phphttp://www.web-delicious.com/jquery-plugins-demo/wdCalendar.zipcomo ellos en su web deshabilitaron la vista en detalle del calendario, te hice unas capturas:
|
|
« Última modificación: 14 Diciembre 2010, 07:11 am por Graphixx »
|
En línea
|
Nada tiene fin solo hay pequeñas pausas, pausas que determinan el comienzo de otros. Graphixx Rōninnovation
|
|
|
giorgio83
Desconectado
Mensajes: 1
|
Hola, amigos, estoy buscando ayuda dada la poca documentacion que trae wdCalendar, alguno de ustedes podria ayudarme a conseguir mis propósitos? Lo que quisiera hacer es por ejemplo, acotar el horario que muestra el calendario para ajustar el horario que se muestra en el calendario al horario laboral de trabajo, es decir si mi horario es de 8 a 20 horas, no me sirve de nada mostrar todas las horas desde las 00 hasta las 24 ya que no voy a poner eventos en esas horas, he encontrado como hacer que la barra vertical solo muestre las horas de 8 a 20, pero al hacer esto, los eventos no cogen la hora bien, es decir si tengo un evento a las 10 me lo esta mostrando en el tramo de las 16 por ejemplo, y si creo un evento nuevo pinchando por ejemplo en el tramo de las 12 realmente me lo crea en las 18 y cosas asi, supongo que es porque tengo que modificar algo mas, pero no encuentro él qué. Me pueden ayudar con este cambio? Gracias de antemano.
Por otra parte otro de los cambios que quisiera hacerle al calendario seria el de poder bloquear ciertos dias o ciertos rangos de fechas en los que aunque hagan click en esos dias no te deje insertar eventos en esos dias ya que están bloqueados. Esto si que no tengo ni idea de por donde empezar.
Un saludo y gracias de antemano.
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Consulta del tipo: Select x From Tabla Where Campo= N variables ??
Programación Visual Basic
|
TheGhost(Z)
|
1
|
5,784
|
14 Enero 2006, 11:05 am
por TheGhost(Z)
|
|
|
¿Cómo hacer una consulta sencilla de un campo en un registro y representarla ?
Bases de Datos
|
velkyta
|
2
|
3,287
|
12 Julio 2010, 03:34 am
por velkyta
|
|
|
Consulta Distinct a un solo campo
« 1 2 »
Bases de Datos
|
matagalo
|
11
|
16,922
|
15 Marzo 2022, 02:28 am
por Rodwin
|
|
|
Como restar minutos a un campo datetime en sql server?
Bases de Datos
|
WHK
|
4
|
20,506
|
24 Julio 2013, 17:14 pm
por 1mpuls0
|
|
|
MYSQL Consulta SQL > datetime backup?
Seguridad
|
Kithai
|
4
|
3,468
|
15 Noviembre 2016, 16:40 pm
por Kithai
|
|