AddThis Feed Button
AddThis Social Bookmark Button
IMGP1165
IMGP1166
IMGP1143
IMGP1144
IMGP1145
IMGP1146
IMGP1147
IMGP1148
IMGP1149
IMGP1150
Categories

This Month Last Year

Julio 2008
L M X J V S D
« Jun «-»  
 123456
78910111213
14151617181920
21222324252627
28293031  
links
31
May

Los portatiles Acer Pierden tornillos



Estaba yo tranquilamente jugando con mi portátil Acer cuando al moverlo suena como un sonajero.. y que descubro??? no le falta 1 tornillo como se ve en la foto si no que también 3 de los 4 que sujetan el disco duro, los cuales rondan por el interior del portátil haciendo contacto con todo.

¿Gracioso verdad?

Gracias a dios estaba en garantía, y me lo ha reparado. Casi podrían darme un nuevo por que seg&úacute;n el informe de reparación le han cambiado la mitad de las piezas.


31
May

Asunto (subject) de emails con caracteres especiales

Muchas veces pasa que en nuestras aplicaciones requerimos el envío de eMails, y muy posiblemente en el subject del mismo queramos poner textos con acentos u otros caracteres, y nos encontramos con la sorpresa de que esos caracteres no sale correctamente.

El error es debido a que las cabeceras de coreo se procesan como datos de 7 bits. Para corregir esto hemos de codificar la linea subject para usar otra codificación, la mas típica es la Base64 (”B”).

Para la codificación del subject en Base 64 debemos simplemente de crear una nueva cadena de Subject con el formato


=?CHARSET?B?CODIGOBASE64=?=

donde CHARSET es la codificación de la cadena (Ej: UTF-8 o ISO-8859-1) la B indica que la cadena ira codificada en Base64 y en el espacio donde eta CODIGOBASE64 ira la cadena del subject codificada.

de modo que quedaría algo tal que así en la cabecera (para la cadena “Acentos á é í ó &úacute; ñ ñ á é í ó &úacute;” y con codificación UTF-8 usando Base64):


Subject: Acentos =?UTF-8?B?w6Egw6kgw60gw7Mgw7ogw7Egw5Egw4Egw4kgw40gw5Mgw5o=?=

Otra cosa que podemos ver en este ejemplo es que no todo el Subject esta codificado, la palabra “Acentos” esta fuera de la codificación, se pueden codificar solo partes del Subject y no el Subject entero.

Esto es muy &úacute;til especialmente en PHP , donde el envío de email se realiza a bajo nivel y no codifica automáticamente la cabecera.

Para realizar la codificación en Base64 en PHP tenemos la función base64_encode lo que nos hace el proceso mucho mas sencillo.


30
May

Reemplazar Patrones con PHP y Regex

PHP
Tras una pequeña iniciación a las Expresiones Regulares, vamos a ver su aplicación en un contexto específico. Para ello utilizaremos PHP y las funciones ereg($expresion, $cadena) y ereg_replace($expresion ,$sustitución, $cadena).

Como ya me comentaron en menéame acerca del anterior articulo, también existen otras funciones basadas en PERL , que son más potentes, pero no son tan compatibles como las pintan, ya que la mayoría de los servidores traen desactivada la compatibilidad con ellas. Por ello decidí usar solo las funciones nativas de PHP.

El ejemplo que vamos a usar es el de eliminar HTML de unos ficticios comentarios de cara a su almacenamiento en una DB. Para ello ya existe la función strip_tags($cadena,[excepciones]), pero haremos como si no existiera para probar las Expresiones Regulares.

Lo primero que tenemos que tener claro es que patrón debemos simular: Buscamos una cadena de caracteres "encerrada" entre unas posibles etiquetas de HTML (que pueden ser reales o no). Por ejemplo: <b>Texto</b> ó <melkorcete>Texto</melkorcete>. Pero también vamos a poder eliminar etiquetas de XHTML como <img src="ola" />. Con esto lograremos una Expresión Regular bastante completa.

Vamos a desglosarla por partes para ir poco a poco.


// Por definición, debe comenzar por < seguido de cualquier caracter distinto a
// < y que se puede repetir de una a infinitas veces. Se cierra con > o sin él
// (de cara al XHTML se usa ? y no *)
$expresion = “<[^>]+>?”;

// Ahora el contenido de la etiqueta que debe ser cualquier caracter distinto de los corchetes
// y que puede o no existir (de cara al XHTML). Esta vez entre paréntesis para capturarlo después.
$expresion .= “([^>|^<]*)”;

// Ahora el cierre del HTML con la opcion de XHTML incluida
$expresion.= “]*>”;

// Lo que nos deja en total:
$expresion = “<[^>]+>?([^>|^<]*)]*>”;

Una vez conseguido el patrón, ahora vamos a crear nuestra función en PHP. Esta debe tener un comportamiento recurrente para solventar un posible anidamiento de etiquetas. Es decir, que también reemplace <b><i>hola</i></b> o casos parecidos:


// Limpiar HTML de una funcion
// $opcion define si la cadena de salida usara previamente un htmlentities();
function limpiarHTML($cadena,$opcion) {
$expresion = "<[^>]+>?([^>|^<]*)]*>”;

while (ereg($expresion,$cadena) == true) {
$cadena = ereg_replace($expresion,\’\\\\1\’,$cadena);
}

if ($opcion) {
return htmlentities($cadena);
} else {
return $cadena;
}

Con esta función ya tendríamos lo que necesitamos, que mientras que ereg() devuelva true (encontró una etiqueta) vaya reemplazando toda la etiqueta por solo el contenido.

Con esto creo que ya podéis haceros una idea del uso de las Expresiones Regulares , no obstante, próximamente pondré un artículo relacionado con .NET y las Regex.


24
May

“Daios onde duel” XD

Nueva sentencia CC en Oviedo: no se paga a la $GAE desde que se pone m&úacute;sica no privativa.

http://barrapunto.com/articles/07/05/24/0851213.shtml

Via: Barrapunto.com


24
May

Aburrimiento de jueves por la mañana…

Estaba yo en mi casa aburrido este jueves y me puse a revisar mi lista de Feeds, entre bostezo y bostezo he encontrado una serie de imágenes graciosas de linux vs Windows. Espero que os riáis un poco como yo jeje.


Entradas siguientes »