Crear cadena aleatoria en PHP

Escrito por Enero 7, 2008 – 10:26 am | por dotBlog | 310 lectura (s)

La generación de una cadena aleatoria es muy útil, ya que se puede usar para la creación de códigos, contraseñas, campos de validación de seguridad, y cualquier otro fin que necesite valores al azar. Particularmente, yo las utilizo para definir valores secretos en usuarios, los cuales me sirven para almacenar en cookies de sesión. También las utilizo para realizar la verificación a la hora de un registro de usuario, genero un código aleatorio con esta función y se la envío por e-mail para que realice la confirmación. Las posibilidades de utilización son muchas, queda todo a tu imaginación.

<?php
function newCode(){
    $string = '';
    $ok = false;
    $len = 8;
    $chars = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
    do {
	for ($i = 0; $i < $len; $i++)
        {
	   $pos = rand(0, strlen($chars)-1);
	   $string .= $chars{$pos};
	 }
	    $res = mysql_query("SELECT id FROM urls WHERE code = '$string'");
	    if (mysql_fetch_lengths($res)>0)
	    	$ok = true;
 
	    } 
      while ($ok = false);
           return $string;
	}
?>

La variable $chars nos define los caracteres admitidos para la generación de la cadena aleatoria. Podemos definir los que necesitemos, en este caso solo se utilizan las letras minúsculas, mayúsculas y los números.

La variable $len es el tamaño (o longitud) que va a tener la cadena aleatoria, en este caso se va a generar una de 8 caracteres. Tranquilamente esta variable podría haber sido pasada como parámetro, pero como yo no lo necesito no lo hice.

  1. 1 Trackback(s)

  2. Feb 14, 2008: Generar contraseñas con PHP | dotBLOG

Opina que es gratis!

Acerca de

Sitio dedicado a difundir nuevas tecnologías, noticias de Internet, gadgets, software y todo lo que tenga que ver con las nuevas tendencias de la vida digital.

Suscribirme

 Suscribirse mediante Reader O, suscribirse vía e-mail, en donde recibirás diariamente las novedades que se publican:
Ingresa tu e-mail:  

Seguime en Twitter

Ahora podés recibir las noticias y actualizaciones directamente en tu Twitter! Solo tenés que seguir al usuario de dotBLOG y listo!
Google