rulu ruru

postExpresiones Regulares

September 28th, 2008

Filed under: PHP — admin @ 8:48 pm

¿Qué son?
Son expresiones que describen un conjunto de candenas Sin enumerar sus elementos.
O sea que nos permiten realizar busquedas en Strings, encontrando los patrones buscados en ellos.

¿Para qué sirven en PHP?
Nos permiten encontrar patrones especiales en cadenas, así como también afianzar la seguridad de nuestro sistema.
Generalmente se utilizan para realizar modificaciones, comparaciones e identificaciones de patrones.

¿Cómo se usan?
En PHP las utilizamos con EREG (Y sus variaciones como ereg_replace, eregi, etc).
Por ejemplo para saber si una cadena contiene sólo caracteres númericos, lo hacemos de la siguiente manera:

$string = 123456;
$string2 = "abcdef";
if (ereg("^[0-9]+$",$string)) { echo "Contiene sólo números"; }
if (ereg("^[0-9]+$",$string2)) { echo "No contiene sólo números"; }

¿Ayudan a crear un sistema seguro?
Absolutamente, recordemos que todos los campos que un usuario pueda ingresar en nuestro sistema, deben contener pura y exclusivamente lo que NOSOTROS como programadores queremos. En ese caso como anteriormente dije, si tenemos que pasar un ID mediante URL, el mismo debe ser númerico y una comprobación con expresiones regulares, hará que mediante la variable, no pase nada que no sea númerico, aumentando la seguridad ante SQL inyects.
También nos permiten saber si un usuario ingresó su nombre de manera correcta, sabemos que nadie se llama “123456″ la expresión regular bien utilizada nos permite lograr que los usuarios ingresen los campos tales y como son requeridos, quizás mienta, pero nuestros campos en la base de datos están preparados para cada tipo de datos (Si es númerico, usamos un campo númerico, si es texto, usamos text, si es un nombre usamos varchar..)

Les dejo una guia con los patrones y definiciones, así como también las fuentes consultadas.

Patrón Significado
. cualquier carácter
^c empezar por el carácter c
c$ terminar por el carácter c
c+ 1 o más caracteres c
c* 0 o más caracteres c
c? 0 o 1 caracteres c
\n nueva línea
\t tabulador
\ escape, para escribir delante de caracteres especiales: ^ . [ ] % ( ) | * ? { } \
(cd) caracteres c y d agrupados
c|d carácter c o d
c{n} n veces el carácter c
c{n,} n o más caracteres c
c{n,m} desde n hasta m caracteres c
[a-z] cualquier letra minúscula
[A-Z] cualquier letra mayúscula
[0-9] cualquier dígito
[cde] cualquiera de los caracteres c, d o e
[c-f] cualquier letra entre c y f (es decir, c, d, e o f)
[^c] que no esté el carácter c
[[:alnum:]] cualquier letra o dígito (pero no vocales acentuadas, ñ, ç, etc.)
[[:alpha:]] cualquier letra (pero no vocales acentuadas, ñ, ç, etc.)
[[:digit:]] cualquier dígito
[[:lower:]] cualquier letra minúscula (pero no vocales acentuadas, ñ, ç, etc.)
[[:punct:]] cualquier marca de puntuación
[[:space:]] cualquier espacio en blanco
[[:upper:]] cualquier letra mayúscula (pero no vocales acentuadas, ñ, ç, etc.)

http://www.mclibre.org/consultar/php/lecciones/php_expresiones_regulares.html

http://es.wikipedia.org/wiki/Expresión_Regular

postAlgunos tips de seguridad en php

February 24th, 2008

Filed under: PHP — admin @ 2:23 pm

Hace días vengo observando constantes “Scaneos” hacia las webs que hosteamos en invisionarg, lo más extraño de esto, es que los escaneos provienen de servidores web infectados, y nosotros seríamos uno de esos si no contaramos con mod_security.

La seguridad en PHP es algo que no se debe dejar de lado, y si te considerás un buen coder deberías estar asumiendo que todos tus códigos deben SER SEGUROS.

Para empezar, hay diferentes formas de asegurar tu código, pero la principal siempre es: Comprobar todo lo que pueda ser enviado por el usuario hacia tu sitio web.

(more…)

postTutoriales en video de PHP

November 26th, 2007

Filed under: PHP — admin @ 1:48 pm

Como siempre intento mantenerme actualizado con todos las cosas que salen al mercado, en cuanto a PHP y desarrollo web.
Hoy estaba recorriendo Blog and Web y encontré unos videotutoriales excelentes realizados por Sonic gutthen dueño de http://www.salvadorbiedma.com , realmente muy buenos.

(more…)

postClase para mandar email

November 25th, 2007

Filed under: PHP — admin @ 3:43 pm

Estaba al pedo, ya que estos días ando al pedo, el doctor dijo que debia tomar un descanzo por el estres, pero no puedo así que me pongo a codear cualquier cosa.

Hoy hice una clase que sirve para formularios de contacto principalmente.

El uso de la clase es simple, se instancia con el remitente el titulo, y luego se introduce el texto del body, al introducirlo la clase lo separa en parrafos (<p></p>) y si el campo tiene saltos de linea “\n” lo cambia automaticamente a “<br>”
Una vez que tenemos el texto que irá en el body, ponemos la dirección de correo electronico a donde será enviado el email y le damos “enviar”, estas dos últimas devuelven true o false.

(more…)

postinsertar un archivo csv en mysql con php

November 25th, 2007

Filed under: PHP — admin @ 1:39 am

Acabo de terminar una clase que inserta un arhivo csv en mysql con php, sólo debemos determinar los parametros correctos.
La clase es para PHP 5 (PHP POO)

En la clase se introduce:
A) La tabla en donde serán insertados los datos
B) La ruta al archivo
C) El orden y el nombre de los campos en donde irá insertada cada linea del csv.
D) El caracter que separa un valor de otro

(more…)

ruldrurd
Next Page »
Entries (RSS) and Comments (RSS)