Per generare un codice puoi usare
Poi dovresti confrontarlo con gli altri memorizzati in un file o sul DBCodice PHP:
$codelength = 20; //Lunghezza del codice (usare rand(min,max) per una lunghezza casuale)
$salt = "abcdefghijklmnopqrstuvwxyz0123456789";
$code='';
for($i=0;$i<=$codelength;$i++)
{
$code.=substr($salt,rand(0,strlen($salt)),1);
}
echo $code;