Muchas gracias por el apporte, gran aporte,
He agregado algunas cosas, que aparecen com MAYUSCULAS.
Gracias nuevamente y haber quien mas se anima para mejorar este script
Código PHP:
<?
function nombre_usuario($nombres,$apellidos)
{
// Separamos los Nombres
list($pri_nombre,$seg_nombre) = explode(" ",$nombres);
// Separamos los Apellidos
list($pri_apellido,$seg_apellido) = explode(" ",$apellidos);
// QUITAMOS LOS ESPACIOS EN BLANCO, EJEMPLO DE APELLIDO: DEL CAMPO
$pri_nombre= preg_replace('/[ <>\'\"]/','',$pri_nombre);
$seg_nombre= preg_replace('/[ <>\'\"]/','',$seg_nombre);
$pri_apellido= preg_replace('/[ <>\'\"]/','',$pri_apellido);
$seg_apellido= preg_replace('/[ <>\'\"]/','',$seg_apellido);
// Ticket de Condicion
$username_encontrado = FALSE;
$reglas = 0;
$largo_nombre=strlen($pri_nombre); //largo del nombre
$j=1; //INDICA LA CANTIDAD DE CARACTERES A EXTRAER DEL NOMBRE
// Mientras Encontremos un UserName
while ( !$username_encontrado )
{
// Comenzamos con las Reglas
switch ($reglas)
{
// Primer Nombre y Primer Apellido
case 0:
$username = cortar_string(substr($pri_nombre,0,$j).$pri_apellido,12); //MANDAMOS LA CANTIDAD DE LETRAS ($J) DEL NOMBRE + EL APELLIDO (jperez,juperez,juaperez...)
// Realizamos Consulta SQL
$sql = "SELECT id FROM usuarios where username = '$username'";
// Aplicamos Consulta
// Si existe registro, debemos cambiar el nick
$j++; //SIGUIENTE CARACTER DEL NOMBRE
#MANTENGO LA REGLA HASTA TERMINAR CON TODAS LAS LETRAS DEL PRIMER NOMBRE
if ($j > $largo_nombre) //SE USARON TODAS LAS LETRAS DEL PRIMER NOMBRE
{
$j=1; //PARA COMENZAR CON LA PRIMERA LETRA DEL NOMBRE
$reglas++; // Seguimos con la Otra Regla
}
else
{
// Si no Existen Registros
$username_encontrado = TRUE;
}
break;
// Primer Nombre Segundo Nombre Primer Apellido
case 0:
break;
// Primer Nombre Primer Apellido Segundo Apellido
case 0:
break;
// Regla de Numeros Al Azar
default:
$username = cortar_strig($pri_nombre.$pri_apellido,10).rand(0,99);
// No Aumentamos la $reglas++ ya que esta es la ultima regla, de nombres con un numero al azar
}
if ( $username_encontrado )
{
// Encontramos el Nick
// Insertamos en la BD
// o lo retornamos en la Funcion
return $username;
}
}
}
function cortar_string($s,$t)
{
return( substr($s,0,$t) );
}
?>