Actualmente estas viendo el weblog personal de Carlos Montalvo, un profesional en el desarrollo web con sede en la ciudad de Lima, Perú.

Suscribete a posts o comentarios

Sigueme en Twitter

Generar contraseñas aleatorias con php

30 Sep

Escrito por hace 1 año y 11 meses | 1 Comentario

Hoy en día la funcion md5 es la más usada ya que el hash devuelto consiste en una cadena de 32 números en formato hexadecimal, este método es irreversible por lo cual si estamos desarrollando una aplicación web la cual integre un sistema de usuarios tendríamos añadir la opción de que un usuario pueda resetear su contraseña si lo olvida alguna vez.

Este proceso es sencillo, existen varias maneras la más común es pedirle al usuario su email de registro mediante un formulario el cual verificara si existe dicho email en la db luego se enviara un mensaje de verificación el cual si lo acepta automáticamente se genera una contraseña aleatoria y se envía al email correspondiente.

Hay innumerables formas de generar contraseñas aleatorias, yo he tratado de construir una función que me satisface dicho requerimiento.

       function random_pwd($length=5,$mode='alfa'){

           switch ($mode):
                case "alfa":

                    $source = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';

                break;
                case "int":

                   $source = '1234567890';

                break;
                case "extra":

                    $source = '|@#~$%()=^*+[]{}-_';

                break;
                case "all":
                   $source = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890|@#~$%()=^*+[]{}-_';

                break;
                default:

                    $source = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';

                break;

           endswitch;

            if($length>0){

                $rstr = "";

                $source = str_split($source,1);

               for($i=1; $i< =$length; $i++){

                   mt_srand((double)microtime() * 1000000);

                   $num = mt_rand(1,count($source));

                   $rstr .= $source[$num-1];

               }

           }

       return $rstr;

   }

   echo random_pwd(10,'all');
 //salida aleatoria : RJ}JwFdC%C

Si observan esta funcion nos da la posibilidad de generar una contraseña dependiendo de cuantos caracteres necesitamos o vemos que sea necesario y la opción de personalizar el tipo de caracteres que tendrá nuestra contraseña mediante los siguientes parámetros.

  • "alfa" que son el alfabeto completo
  • "int" que son caracteres enteros
  • "extra" que son caracteres para una contraseña más compleja
  • "all" la union de todos los caracteres

Categorizado :Desarrollo Web

Etiquetado :Password,php,Random,Tricks,Trucos

1stwebdesigner a recopilado más de 300 menús los cuales nos ayudaran a enriquecer la experiencia del usuario implementando una navegación accesible e intuitiva, tenemos de todos los gustos y colores entre los que resaltan el uso de JQuery, Mootools y CSS.

En esta mañana me salio el cartelito que necesitaba actualizar mi Firefox a la versión 3.0.2, buscando en la pagina de Mozilla encontré que dicha actualización soluciona varios problemas de seguridad y si aun no te salta el cartelito puedes forzar la actualización en el submenú Buscar Actualizaciones de tu menú Ayuda.

Jcrop es un plugin de JQuery el cual nos permite recortar imagenes de una manera rápida y fácil, y ni hablar de su excelente manual y ejemplos que nos brinda. [Descarga]

Navegando Seguro

21 Sep

Escrito por hace 1 año y 11 meses | 1 Comentario

¿Sobran las palabras :D no?.

Via WebMaster View

Categorizado :Curiosidades

Etiquetado :Firefox,Seguridad

Temas Wordpress 09/19

19 Sep

Escrito por hace 1 año y 11 meses | 1 Comentario

Aeros

Descarga

Demo


Google Chrome

Descarga

Demo


SuperFresh

Descarga

Demo


Prologue Gaboogle

Descarga

Demo


Vistalicious WordPress

Descarga

Demo


Categorizado :Diseño Web

Etiquetado :Wordpress,WP Themes

Sube tus archivos de manera facil con php

19 Sep

Escrito por hace 1 año y 11 meses | Sin Comentarios

Vero es un programador que a lo largo de estos años a estado puliendo una inmejorable forma de aliviarnos las penurias, cuando de hacer un upload se trate.

Para mi esta clase Upload es casi completa, tiene de todo y es re contra configurable.

¿Que es lo que diferencia esta clase de las demás?

  • Después de subir un archivo, uno puede hacer tantas copias, conversiones y cambios de tamaños que uno desee.
  • Se puede manipular la imagen de muchas maneras, rotar la imagen, jugar con los colores, añadir bordes y marcas de agua.
  • Añadir textos.
  • Validación del tipo de archivo a subir.
  • Sumamente Flexible.
  • Es Gratis.

La clase es tan poderosa para mi gusto que con un simple ejemplo veremos su potencial.


$foo = new Upload($_FILES['form_field']);
if ($foo->uploaded) {
// subimos la imagen
$foo->Process('/home/user/files/');
if ($foo->processed) {
echo 'copia original de la imagen';
} else {
echo 'error : ' . $foo->error;
}
// Volvemos a subir la imagen con otro nombre
$foo->file_new_name_body = 'carlos-montalvo';
$foo->Process('/home/user/files/');
if ($foo->processed) {
echo 'Imagen renombrada con el nombre "carlos-montalvo"';
} else {
echo 'error : ' . $foo->error;
}

// Esta vez le creamos una miniatura de 100px de ancho
$foo->file_new_name_body = 'image_miniatura';
$foo->image_resize = true;//activamos la opcion de miniaturaa
$foo->image_convert = gif; //lo convertimos a gif
$foo->image_x = 100;//asignamos 100px
$foo->image_ratio_y = true;//activamos el ratio
// Subimos la imagen con los cambios realizados
$foo->Process('/home/user/files/');
if ($foo->processed) {
echo 'Imagen renombrada y en miniatura con 100px de ancho
y convertida en gif';
$foo->Clean();//limpiamos
} else {
echo 'error : ' . $foo->error;
}
}

Así de simple logramos tantos cambios con una sola imagen subida.

Descarga Clase Upload

Documentación


Categorizado :Desarrollo Web

Etiquetado :php,Uploads

El equipo de Vandelay Website Design a recopilado 35 excelentes tutoriales para dominar los pinceles en photoshop, recursos indispensables para cualquier diseñador web o grafico.

Generar Slugs para Urls Amigables con php

18 Sep

Escrito por hace 1 año y 11 meses | 7 Comentarios

Hoy en día la creación slugs basados en lo títulos de nuestros artículos es muy popular. WordPress, Drupal y muchos más lo utilizan de forma excelente. Sin duda los slugs son muy favorables para el posicionamiento web (SEO) en los buscadores especialmente en Google.

No basta con tener configurado tu htaccess o algún script que permita trabajar con urls amigables, especialmente si trabajamos con una tabla de artículos necesitaremos crear un slug de los títulos para que puedan ser leídos por el método que usemos para generar urls amigables.

Aquí un método que anos ayudara en este proceso.

function caracteres_latinos($cadena){
	//acentos
	$cadena = ereg_replace("(À|Á|Â|Ã|Ä|Å|à|á|â|ã|ä|å)","a",$cadena);
	$cadena = ereg_replace("(È|É|Ê|Ë|è|é|ê|ë)","e",$cadena);
	$cadena = ereg_replace("(Ì|Í|Î|Ï|ì|í|î|ï)","i",$cadena);
	$cadena = ereg_replace("(Ò|Ó|Ô|Õ|Ö|Ø|ò|ó|ô|õ|ö|ø)","o",$cadena);
	$cadena = ereg_replace("(Ù|Ú|Û|Ü|ù|ú|û|ü)","u",$cadena);

	//la ñ
	$cadena = ereg_replace("(Ñ|ñ)","n",$cadena);

	//caracteres extraños
	$cadena = ereg_replace("(Ç|ç)","c",$cadena);
	$cadena = ereg_replace("ÿ","y",$cadena);

	return $cadena;
}

function generar_slug($cadena, $separador = '-'){
	//sin espacios al inicio o al final
	$cadena = trim($cadena);

	//limpiamos caracteres los latinos
	$cadena =  caracteres_latinos($cadena);

	//pasamos a minuscula la cadena
	$cadena = strtolower($cadena);

	//limpiamos saltos de lineas y tab
	$cadena = ereg_replace("[ tnr]+", " ", $cadena);

	//limpiamos todos los caracteres invalidos
	$cadena = ereg_replace("[^ A-Za-z0-9_]", "", $cadena);

	//limpieza de espacios vacios de los valores invalidos al final de la cadena
	$cadena = trim($cadena);

	//reemplazamos los espacios vacios por el separador
	$cadena = str_replace(" ", $separador, $cadena);

	return $cadena;
}

$str = generar_slug('Así es el ejemplo para generar el Slug ¿o no?');

//retornara #-> asi-es-el-ejemplo-para-generar-el-slug-o-no
echo $str;

Muy sencillo pero practico, lo podemos usar para generar un slug del titulo de nuestros artículos y grabarlo en otro campo de nuestra tabla el cual se convertiría en un identificador de la noticia.

Categorizado :Desarrollo Web

Etiquetado :php,Urls Amigables

CalinSoft en Planet WebDev

18 Sep

Escrito por hace 1 año y 11 meses | 2 Comentarios

Desde el día de hoy soy un colaborador de Planet WebDev un excelente planet relacionado al desarrollo web en castellano. Desde aquí agradezco a Hector por la rápida respuesta en aceptarme.

Con la esperanza de aportar un granito de arena a esta gran comunidad que tiene Planet WebDev, aprovecho el post para decir que en estos días publicare una versión mejorada de las Urls Amigables basada en WP_ReWrite_API si la de Wordpress, la cual hasta ahora solo a sido algo simple.

Categorizado :General

Etiquetado :calinsoft

« 1 2 3 4 5 6