abril 21, 2010 0

Sustituido el plugin de resaltado de sintáxis

By in General

Desde hoy, el plugin que se utiliza para resaltar el código es Syntax Highlighter WordPress Plugin. A este plugin, creo que más vistoso que el anterior, se le indica el código de forma distinta. Por este motivo, y porque hoy no podré editar todas las entradas, durante un tiempo ambos convivirán, espero que no por mucho tiempo, hasta que haya actualizado todas las entradas. Perdonen las molestias, espero solo visuales, que esto ocasionará.

Comparte esta entrada:
Delicious Digg Google Technorati Menéame Fresqui Reddit Facebook Twitter Yahoo! Buzz MySpace Email BarraPunto

Tags:

abril 20, 2010 1

Consejos de seguridad en el desarrollo de aplicaciones web

By in General, PHP

La seguridad es un aspecto muy importante al que hay que prestar atención cuando se desarrolla. Es importante tenerla en cuenta desde el mismo comienzo del desarrollo, no dejando la seguridad como algo secundario a realizar en momentos posteriores. Es por esto que vamos a dejar algunos consejos de como mejorar la seguridad durante el desarrollo de nuestras aplicaciones.

No confies en los usuarios

Esta es una de las reglas más importantes. Considera todas los datos que tus usuarios envíen como maliciosos.

$id = intval($_GET['id']);
mysql_query("SELECT username, email, password FROM users WHERE id = $id");

Con una sola linea podemos evitarnos una inyección SQL, por ejemplo.

Validación de datos en el servidor

Es importante realizar la validación de los datos en el servidor. Aunque realicemos también validación en cliente, mediante JavaScript por ejemplo, no hay que olvidarse que es relativamente fácil saltarse esta. Validando los datos en el servidor desde el principio nos evitamos bastantes problemas.

Presta atención a los archivos subidos

Si permites que tus usuarios suban archivos al servidor comprueba estos adecuadamente. Si son imágenes comprueba su tamaño, su tipo MIME, etc, con la función getimagesize. En caso de que sean otro tipo de archivos puedes usar fileinfo (disponible desde la versión 5.3.0) para obtener información de los archivos. Por ejemplo:

Asegura tus formularios contra los bots

Usa algún tipo de captcha para asegurar tus formularios contra bots de spammers. Hay distintas técnicas, puedes implementar uno propio, hacer uso de algún servicio externo o usar una librería de terceros.

Permisos mínimos para el usuario de la base de datos

Da los mínimos permisos al usuario de la base de datos. Si la aplicación solo va a realizar consultas SELECT, INSERT y UPDATE que el usuario de la base de datos solo pueda realizar SELECT, INSERT y UPDATE. No es nada complicado y te puede evitar algún que otro quebradero de cabeza.

Estos consejos son una “traducción” muy libre de estos otros:

http://www.osmialowski.me/blog/web-development-security-tips/

Comparte esta entrada:
Delicious Digg Google Technorati Menéame Fresqui Reddit Facebook Twitter Yahoo! Buzz MySpace Email BarraPunto

Tags: , ,

abril 13, 2010 0

Cheat sheets para todos los gustos

By in General

Navegando por estos mundos de Internet he encontrado una colección de cheat sheets muy interesante. Podemos verlas todas en el siguiente enlace: Cheat Sheets.

Me han parecido muy interesantes las siguientes:

Por supuesto hay muchas más que pueden ser de mucha utilidad mientras se desarrolla.

Comparte esta entrada:
Delicious Digg Google Technorati Menéame Fresqui Reddit Facebook Twitter Yahoo! Buzz MySpace Email BarraPunto

Tags: , , ,

marzo 25, 2010 1

Generando CSS mediante PHP

By in CSS, PHP

Si algo se hecha de menos en CSS es el no poder hacer uso de variables o de cierta lógica. Hay que tener en cuenta que CSS es un lengauje meramente estilístico, sirve para describir los estilos y la presentación de los elementos de la página.

Si alguna vez necesitamos incluir lógica en los CSS, por ejemplo para cambiar la paleta de colores en función de la estación del año, podemos usar PHP para esto. Lo que vamos a tener ahora es un archivo PHP en lugar del CSS, por ejemplo style.php. En este archivo lo primero que tendremos será:

header("Content-type: text/css; charset: UTF-8");

De esta forma le decimos al navegador que el contenido será del tipo CSS. Veamos un ejemplo donde el color de fondo y el color del texto se seleccionará de forma aleatoria. Primero el código de nuestra página:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"  dir="ltr" lang="es-ES">
<head>
<link rel="stylesheet" type="text/css" href="style.php"/>
</head>
<body>
<div id="bloque">Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Aliquam at facilisis odio. Integer sollicitudin facilisis tortor, id
ullamcorper dolor dignissim vel. Curabitur tristique pellentesque iaculis.
Vivamus molestie condimentum hendrerit. In hac habitasse platea dictumst.</div>
</body>
</html>

Y ahora el del script PHP que genera la CSS:

<?php

header("Content-type: text/css; charset: UTF-8");

$colores = array(
  array('bg' => '#000', 'fg' => '#fff'),
  array('bg' => '#00f', 'fg' => '#fff'),
  array('bg' => '#fff', 'fg' => '#f00')
);

$color = $colores[rand(0,2)];
?>

#bloque {
color: <?php echo $color['fg'];?>;
background-color: <?php echo $color['bg'];?>;
}

Se puede ver como se elige una u otra paleta de forma aleatoria en este enlace.

Comparte esta entrada:
Delicious Digg Google Technorati Menéame Fresqui Reddit Facebook Twitter Yahoo! Buzz MySpace Email BarraPunto

Tags: ,

marzo 11, 2010 5

Como utilizar Lightbox 2

By in JavaScript, Librerías

Lightbox es un script escrito en JavaScript que nos permite mostrar una “popup” con una imagen de una forma bastante elegante. Para hacer uso de Lightbox lo primero que vamos a hacer es descargarnos el script desde su página web.

Una vez que tenemos esto ya podemos incluirlo en nuestra página. Lo primero que tendremos que incluir es el framework Prototype y la librería de efectos Scriptaculous, ambas vienen con Lightbox, ya que Lightbox hace uso de estas. Una vez incluidas añadiremos también el script de Lightbox:

<script type="text/javascript" src="js/prototype.js"></script>
<script type="text/javascript" src="js/scriptaculous.js?load=effects,builder"></script>
<script type="text/javascript" src="js/lightbox.js"></script>

Tras añadir los script tenemos que incluir el archivo con los estilos de Lightbox:

<link rel="stylesheet" href="css/lightbox.css" type="text/css" media="screen" />

Una vez hecho esto ya tenemos Lightbox listo para usarlo. Para ello tendremos que añadir el atributo rel con el valor “lightbox” al enlace que queremos que muestre nuestra imagen. Veamos un ejemplo:

<a href="images/image1.jpg" rel="lightbox" title="Imagen 1">imagen 1</a>

De ese modo al hacer click sobre el enlace se abrirá la imagen indicada en la propiedad href, pero lo hará mediante Lightbox. Si a la etiqueta <a> le añadimos el atributo title, en el ejemplo está, Lightbox nos mostrará también el título.

Podemos crear conjuntos añadiendo el nombre del conjunto entre corchetes en el atributo rel, de la siguiente forma:

<a href="images/image1.jpg" rel="lightbox[set]">imagen 1</a>
<a href="images/image2.jpg" rel="lightbox[set]">imagen 2</a>
<a href="images/image3.jpg" rel="lightbox[set]">imagen 3</a>

Como se ha podido ver con Lightbox podemos mostrar nuestras imágenes de una forma más elegante que mostrando solo la imagen en el navegador.

Podéis descargar un pequeño ejemplo en el siguiente enlace:

Demo de LightBox 2

Comparte esta entrada:
Delicious Digg Google Technorati Menéame Fresqui Reddit Facebook Twitter Yahoo! Buzz MySpace Email BarraPunto

Tags: , , ,