Ver Mensaje Individual
  #14 (permalink)  
Antiguo 14/07/2011, 08:02
dscafati
(Desactivado)
 
Fecha de Ingreso: julio-2009
Mensajes: 174
Antigüedad: 14 años, 9 meses
Puntos: 3
Respuesta: Generar ID alfanumérico

te cuento como lo haria yo:

En la base de datos generaria el id numerico
despues cuando necesito las letras haria una funcion para codificar y otra para decodificar el id en letras

por ejemplo:
en ascii las letras son 25 del 97 al 122

osea que a tu numero habria que pasarlo de decimal a un sistema de base 25, para esto se divide el numero por 25 y con los restos al reves se forma el numero. estos restos son de 0 a 25 por lo que hay que sumarle 97 (para que cero sea igual a 97 y 25=122)



la funcion de decodificar tendira que agarrar cada caracter, pasarlo con ord() a su correspondiente ascii, restarle 97, y acumularlo en un array al revez, osea que la unidad sea el array[0], la decena el array[1]..., despues con un foreach(array as variable) sumar todas las variables*10^posicion en el array


si te parece hacerlo asi te ayudo en el codigo, avisame

Última edición por dscafati; 14/07/2011 a las 08:08