.  

 

 

.
.

26 / 05 / 2017

Usuarios conectados: 4

Cargando documento...

Buscar:

.

Este Sitio:

Principal

Dreamweaver

Fireworks

JavaScript

CSS

Sonido

Artículos

Links

E-ufemismos

Descargas

Historial

 

Mailing List:

Suscríbete a la lista de correo, No practico spamming y ofrece algunas ventajas.

Pulsa aquí para saber más y suscribirte.

 

Recomendados:

Tecnorama >Tutoriales Dreamweaver

 

Manejo de Fechas en consultas a MySQL

Versión para imprimir | Translate this page

En el artículo anterior utilizamos PHP para obtener las fechas necesarias y aplicarles formato. Lo que intentaremos ahora es que la consulta a la BD nos devuelva ya los 4 valores necesarios (fecha de inicio, fecha actual, fecha de finalizacion y dias restantes) con sus formatos. El periodo de 90 dias lo declararemos directamente en la consulta:

" SELECT username, DATE_FORMAT(subscript_date,'%d/%m/%Y') AS fecha_subscrip,
DATE_FORMAT(CURDATE(),'%d/%m/%Y') AS hoy,
DATE_FORMAT(ADDDATE(subscript_date, INTERVAL 90 DAY),'%d/%m/%Y') AS fecha_final,
TO_DAYS(ADDDATE(subscript_date, INTERVAL 90 DAY))-TO_DAYS(CURDATE()) AS dias_restantes
FROM tbl_users WHERE username='session_param' "

Con esta consulta hemos conseguido los 4 valores con formato (incluída la fecha actual), recuperables en DW (Recordset ‘RSusers’) como:

$row_RSusers['fecha_suscrip'];
$row_RSusers['hoy'];
$row_RSusers['fecha_final'];
$row_RSusers['dias_restantes'];


Veamos las funciones utilizadas:
DATE_FORMAT(fecha,formato):El primer parametro se corresponde con la columna de la BD que almacena la fecha (o con una fecha declarada directamente) y la segunda con el formato a aplicar.

¿ Como se define el formato? mediante el uso del símbolo '%' seguido de una letra que define el formato. Nosotros hemos utilizado:
%Y: devuelve el año en formato largo (2002);
%m: devuelve el mes en formato de dos cifras (01/12);
%m: devuelve el día en formato de dos cifras (01/31);

Puedes encontrar el listado completo en:
http://dev.mysql.com/doc/mysql/en/Date_and_time_functions.html

Dentro de formato se puede añadir texto o caracteres para enriquecerlo. Por ejemplo:
DATE_FORMAT(subscript_date,'%d/%m/%Y') : devuelve 25/10/2002
DATE_FORMAT(subscript_date,'%d-%m-%Y') : devuelve 25-10-2002
DATE_FORMAT(subscript_date,'%d del %m de %Y') : devuelve 25 del10 de 2002.


CURDATE():
devuelve la fecha actual en formato "aaaa-mm-dd", sin embargo, MySQL es capaz de darle formato sin realizar nada especial.


ADDDATE(fecha INTERVAL tiempo):
añade 'tiempo' a 'fecha'. En nuestra consulta añadimos 90 días a la fecha actual, por lo que declaramos:

ADDDATE(CURDATE(), INTERVAL 90 DAY)

El parametro "tiempo" admite varias posibilidades de declaración, como por ejemplo:
ADDDATE('2002-08-21', INTERVAL 9 MONTH): Añade 9 meses a la fecha.
ADDDATE('2002-08-21', INTERVAL 1-3 YEAR_MONTH): Añade 1 año y 3 meses a la fecha.


TO_DAYS(fecha):
devuelve el numero de días desde el 1 de enero del año 0, lo que nos es útil para poder operar con días completos y luego dar formato. Así, la linea:

TO_DAYS(ADDDATE(subscript_date, INTERVAL 90 DAY))-TO_DAYS(CURDATE()) AS dias_restantes

Calcula primero el numero de días para la fecha de expiración (ADDDATE(subscript_date, INTERVAL 90 DAY)), lo convierte a días mediante TO_DAYS y luego los resta al número de días para la fecha actual (TO_DAYS(CURDATE()))


Nota: MySQL 4.1.1 añade la función DATEDIFF(fecha1,fecha2), que devuelve el número de días entre la fecha1 y la fecha 2. Para el tutorial he decidido no emplearla por considerar que muchos usuarios aún utilizan versiones anteriores de MySQL. En la linea anterior podríamos haber escrito:

DATEDIFF(ADDDATE(subscript_date, INTERVAL 90 DAY), CURDATE())

Existe un listado completo de éstas en la URL:
http://www.mysql.com/doc/en/Date_and_time_functions.html


Un pequeño comentario antes de seguir: Algunos expertos afirman que este método (dar formato directamente en la consulta) mejora el rendimiento, ya que aprovecha la velocidad de MySQL. Si compensa o no utilizarlo es decisión de cada uno.


Para terminar, vamos a ver cómo quedaría nuestra frase en el documento:


Tu oferta de prueba durante 90 días, que comenzó el <?php echo $row_RSusers['fecha_suscrip'];?>, finaliza dentro de <?php echo $row_RSusers['dias_restantes'];?>

¿Comentarios? 108, de momento. Mostrando 1 ->5

1.- advil pm side effects tenze24-domperidone over the counter vomiting

2.- medications that cause dystonia domperidone-tenze24.tumblr buy pantoprazole 40 mg

3.- guest test post
[url=http://googlee.te/]bbcode[/url]
html
http://googlee.te/ simple

4.- study ended this [url=http://onlinecasinos-x.com/]casino[/url] where you can collect real funds with the serve of this enchiridionPlaying [url=http://onlinecasinos-x.com/free-casino-bonus.html]casino bonus[/url] , check this [url=http://onlinecasino-b.com/ru/]casino[/url]

5.- thanks towards this significant illuminating website, obstruct up the great work check out this [url=http://onlinecasinos-x.com]casino online[/url] offers , buy [url=http://adultsrus.us]sex toys[/url]

« Previous | 1 - 5 | 6 - 10 | 11 - 15 | 16 - 20 | 21 - 25 | 26 - 30 | 31 - 35 | 36 - 40 | 41 - 45 | 46 - 50 | Next »

Añade tu comentario



Escribe el código de la imagen superior:

:

Tutoriales Dreamweaver

-El muy buscado Menú desplegable

-¿Qué $%&$% es 'SSI'?

-Utilizar tablas de excel para actualizar tablas en html.

-Plantillas en DW MX: Regiones opcionales.

-Adaptar tablas a la ventana.

-Vista diseño para formatos no reconocidos

-Carga de imagenes en orden

-Mi primera Extensión

-Rollover remoto ('Disjointed Rollover')

-Iframes vs. Frames

-Contenido dinámico en celdas

-DW MX: Repeating Tables

-DW MX: Practica el Cloaking

-DW MX: CSS en tiempo Diseño

-Buscar y Reemplazar en Dreamweaver

-Menú dinámico

-Collaborative Dreamweaver: Design Notes and Files Panel

-Using PHP Server Formats and MySQL Dates

-Creando un Newsticker

-Generate Excel files with DWMX/PHP/MySQL (part 1)

-Manejo de fechas en PHP y MySQL

-Generate Excel files with DWMX/PHP/MySQL (part 2)

-Manejo de Fechas en consultas a MySQL

-Showing all records by default in a results page (PHP)

-Retrieving data using AHAH (1)

-Retrieving data using AHAH (2)

-Retrieving data using AHAH (3)

TECNORAMA es simplemente una página personal. No sirve ni de promoción del autor ni cosas por el estilo.
Todos los códigos, textos y tutoriales son de libre uso mientras se mencione al autor (no es mucho pedir)
Este sitio es compatible con IE6/NS6/Mozilla1.0
Para contactar, puedes enviarme un e-mail a tecnorama@hotmail.com