Archivos Mensuales: julio 2012
Borrar un dato de dos tablas con la misma consulta – MySQL Tips
Seguramente en alguna ocasión nos habremos visto, o nos podemos ver en la situación de borrar de dos tablas un dato, un ejemplo clásico seria el de creo una factura y esta contiene productos, con lo que podríamos tener una tabla de Facturas y otra tabla que fueran detallesFacturas, en la primera guardaríamos los datos generales de la factura y en el la segunda los artículos o lineas que comprondría la factura, pues bien, si borro la factura tengo que borrar también los artículos que estaban en esa factura, y eso tendría que poder hacerlo con una sola consulta.
| Tabla Facturas | Tabla detallesFacturas |
| Id | Id |
| (Resto campos) | IdFactura |
| IdProducto | |
| (Resto campos) |
Imaginemos que tenemos la factura 123 y tenemos que borrarla y queremos borrar también todos los registros referentes a esa factura en la tabla detallesFactura.
La consulta de borrado quedaría así
DELETE a1, a2 FROM Facturas AS a1 INNER JOIN detallesFacturas AS a2 WHERE a1.Id=a2.IdFactura AND a1.Id LIKE 123;
Otra opción podria ser
DELETE FROM a1, a2 USING Facturas AS a1 INNER JOIN detallesFacturas AS a2 WHERE a1.Id=a2.IdFactura AND a1.Id LIKE 123;
Y con esta consulta borraríamos la factura de la tabla Facturas y los datos de la factura que hubiera en la tabla de detallesFacturas.
Mas info aqui: http://dev.mysql.com/doc/refman/5.1/en/delete.html
Libreria para formatear numeros con Javascript
Una librería de JavaScript muy útil para dar formato a los números a la hora de presentarlos en el formato que queramos, la posición de las comas y los puntos, el símbolo de la moneda, valores negativos.
Fechas PHP a MySQL y vuelta – MySQL Tips
Una de las cosas con las que toca lidiar practicamente siempre que trabajamos con fechas contra una base de datos MySQL es que la base va
a almacenar las fechas de la manera ISO «año-mes-dia» y nosotros a la hora de trabajar trabajos con el formato Europeo, ya sea «dia-mes-año» o «dia/mes/año».
Durante muchos años trabajaba con la tecnica de la función bidireccional, es decir, me creaba una función la cual cuando le llegaba la fecha la convertia en un sentido u otro.
function cambiaFormatoFecha($fechaOriginal)
{
//Dividimos la fecha de la hora si existe
$partesStamp = explode(" ", $fechaOriginal);
// La primera parte es la fecha, la segunda la hora
$partesFecha = explode ( "-", $partesStamp[0] );
// La fecha final
return $partesFecha[2] ."-".$partesFecha[1]."-".$partesFecha[0];
}
MySQL guarda las fechas separadas por guiones, así que si nosotros definimos el formato de fecha separado con guiones, pues eso que tenemos ganado y esta función nos convierte tanto nuestras fechas cuando las introducimos como las fechas que devuelve el MySQL.
Trabajar con esto puede parecer que es una gran ventaja, pero la verdad que a nivel de rendimiento no lo es ya que supone ejecutar la función cada vez que aparezca un registro de fecha.
Una solución bastante mas eficiente es la de procesar las fechas en la consulta. Para eso utilizaremos las funciones incorporadas de MySQL DATE_FORMAT y STR_TO_DATE.
Si queremos unos registros de una determinada fecha podemos hacer:
SELECT * FROM `tabla` WHERE fecha LIKE STR_TO_DATE('mifecha','%d-%m-%Y);
En esta consulta mifecha esta en el formato dia-mes-año
Si queremos ver las fechas en el formato dia-mes-año
SELECT DATE_FORMAT(fecha,'%d-%m-%Y) FROM `tabla`;
Para mas información
STR_TO_DATE http://dev.mysql.com/doc/refman/5.0/en/date-and-time-functions.html#function_str-to-date
DATE_FORMAT http://dev.mysql.com/doc/refman/5.0/en/date-and-time-functions.html#function_date-format
Datepicker Jquery en castellano
Dejo el codigo del datepicker de Jquery para que salga en formato castellano
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| $('.datepicker').datepicker({ | |
| dateFormat: "dd-mm-yy", | |
| firstDay: 1, | |
| dayNamesMin: ["Do", "Lu", "Ma", "Mi", "Ju", "Vi", "Sa"], | |
| dayNamesShort: ["Dom", "Lun", "Mar", "Mie", "Jue", "Vie", "Sab"], | |
| monthNames: | |
| ["Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", | |
| "Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre"], | |
| monthNamesShort: | |
| ["Ene", "Feb", "Mar", "Abr", "May", "Jun", | |
| "Jul", "Ago", "Sep", "Oct", "Nov", "Dic"] | |
| }); |
He creado otro Gist con una demo de como crearlo sin necesidad de hacer clic en el input
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| <!– | |
| Demo de datepicker inline en castellano | |
| Autor: Ruben Lacasa Mas <http://rubenlacasa.es> | |
| –> | |
| <!doctype html> | |
| <html lang="en"> | |
| <head> | |
| <meta charset="utf-8"> | |
| <meta name="author" content="Ruben Lacasa Mas – rubenlacasa.es"> | |
| <meta name="description" content="Demo de jQuery inline en castellano"> | |
| <title>datepicker demo</title> | |
| <link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/flick/jquery-ui.min.css"> | |
| <script src="http://code.jquery.com/jquery-1.10.0.min.js"></script> | |
| <script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script> | |
| </head> | |
| <body> | |
| <div id="datepicker"></div> | |
| <div id="datos"> | |
| <label for='fecha'>Fecha:</label> | |
| <!– Campo de texto que recibira el valor seleccionado en el datepicker | |
| le he puesto el atributo readonly para no poder escribir directamente –> | |
| <input type='text' name='fecha' id='fecha' readonly /> | |
| </div> | |
| <script> | |
| $( "#datepicker" ).datepicker({ | |
| // Formato de la fecha | |
| dateFormat: "dd/mm/yy", | |
| // Primer dia de la semana El lunes | |
| firstDay: 1, | |
| // Dias Largo en castellano | |
| dayNames: [ "Domingo", "Lunes", "Martes", "Miercoles", "Jueves", "Viernes", "Sabado" ], | |
| // Dias cortos en castellano | |
| dayNamesMin: [ "Do", "Lu", "Ma", "Mi", "Ju", "Vi", "Sa" ], | |
| // Nombres largos de los meses en castellano | |
| monthNames: [ "Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre" ], | |
| // Nombres de los meses en formato corto | |
| monthNamesShort: [ "Ene", "Feb", "Mar", "Abr", "May", "Jun", "Jul", "Ago", "Sep", "Oct", "Nov", "Dec" ], | |
| // Cuando seleccionamos la fecha esta se pone en el campo Input | |
| onSelect: function(dateText) { | |
| $('#fecha').val(dateText); | |
| } | |
| }); | |
| </script> | |
| </body> | |
| </html> |
La documentación de jQuery UI http://jqueryui.com/demos/datepicker/
Función que nos devuelve el numero de días de un mes
Mas de una vez nos habremos visto en la duda de, como hacer que según el mes y el año que hemos marcado que nos de los dias que tiene ese mes, pues bien, en php hay una función interna que nos facilita el trabajo, esta es cal_days_in_month, y hay que pasarle como parametros el calendario que queremos, por ejemplo CAL_GREGORIAN, el numero del mes, y el año y nos devuelve el numero de dias que tuvo ese mes.
$numeroDias = cal_days_in_month(CAL_GREGORIAN, 10, 2008); echo $numeroDias; //Devolvera 31
Three Marie
Foto tomada en Granvia
Por Daniel Bonilla
Alguna vez me dijeron que existía una banda llamada The Clash, y que tocaban punk. Qué es el punk, pregunté, y me explicaron, con aguda precisión histórica, que era un subgénero del rock aparecido en la segunda mitad de la década de los setenta, caracterizado por el retorno a la sencillez armónica, primaban en él la fuerza escénica, la irreverencia y la respuesta política frente a lo establecido, la injusticia y la desigualdad social. Muy bien, pensé yo en ese entonces, el punk lucía como la música que quería escuchar. Escuché a The Clash y aún hoy los sigo escuchando, son posiblemente una de mis bandas favoritas, pero no por ser todo eso que me dijeron que era, sino simplemente porque cuando el llamado punk, la música de los tres acordes y la autodestrucción, se convirtió en una constante de todos los grupillos que querían figurar…
Ver la entrada original 1.412 palabras más
Hoy es un día histórico para quienes nos dedicamos a la física. Aunque el anuncio del descubrimiento parece que no será definitivo, dos equipos del CERN tienen evidencias de una partícula que hemos perseguido durante décadas: el bosón de Higgs.
Os propongo explorar, de manera sencilla, algunas cuestiones relacionadas con esta aventura científica: ¿qué es el bosón Higgs? ¿por qué es tan importante encontrarlo? ¿de dónde surgió el apodo «la partícula de Dios»?
Pero, antes de nada, demos un pasito atrás y comencemos por una pregunta más sencilla:
1.- ¿De qué está formada la materia?
La materia esta formada por átomos.
Un átomo es como un Sistema Solar en miniatura: tiene un gran núcleo central (compuesto por protones y neutrones) y a su alrededor giran los electrones.
2.- ¿De qué estan formados los protones y los neutrones?
Los protones y los neutrones están formados de unas partículas más pequeñas…
Ver la entrada original 730 palabras más
Photo Blogging 101, Part 1
Spring is in the air. With the weather warming up, now is a great time to get started on a photo blog. Creating a photo blog is a wonderful introduction to blogging on WordPress.com or an opportunity to refresh your current site. Ready to get started? You can sign up for a new blog right over here.
Getting started
Photo blogs, sometimes called phlogs, use pictures instead of words. While many photo bloggers choose a type of photo that they want to focus on, such as portraits, others use their photo blog to document their life’s events. Photo blogs come in a variety of styles, including those that focus on vacation photos or even snapshots of friends. With images, we can capture moments in our life in a way that sometimes words cannot.
When starting a photo blog, you’ll want to choose a theme with a wider content area…
Ver la entrada original 333 palabras más


