si quieres que el prefijo sea automatico es decir, que se incremente una letra al igual que el codigo, seria algo asi:
Código PHP:
Ver original$consu = $db->query("SELECT * FROM tabla ORDER BY id DESC");
$rowid = $consu->fetch_assoc();
$codigo = sprintf("%06d", $rowid['id']);//le asignamos ceros antes a nuestra id para formatearla ejemplo 000015
$a = $rowid['prefijo'];//cadena extraida de la base de datos
$ultima = substr($a, -1, 1);//leemos el ultimo caracter de la cadena $antes = substr($a, 0, -1);//leemos los primero caracteres omitiendo el ultimo
//verificamos el caracter leido y la cambiamos la la sigiente letra en el alfabeto
switch ($ultima) {
case 'A': $sig = 'B'; break; case 'B': $sig = 'C'; break; case 'C': $sig = 'D'; break; case 'D': $sig = 'E'; break; case 'E': $sig = 'F'; break; case 'F': $sig = 'G'; break; case 'G': $sig = 'H'; break; case 'H': $sig = 'I'; break; case 'I': $sig = 'J'; break; case 'J': $sig = 'K'; break; case 'K': $sig = 'L'; break; case 'L': $sig = 'M'; break; case 'M': $sig = 'N'; break;
case 'N': $sig = 'O'; break; case 'O': $sig = 'P'; break; case 'P': $sig = 'Q'; break; case 'Q': $sig = 'R'; break; case 'R': $sig = 'S'; break; case 'S': $sig = 'T'; break; case 'T': $sig = 'U'; break; case 'U': $sig = 'V'; break; case 'V': $sig = 'W'; break; case 'W': $sig = 'X'; break; case 'X': $sig = 'Y'; break; case 'Y': $sig = 'Z'; break;
}
//creamos el limite del bucle for uninendo los primero caracteres con el nuevo caracter
$b = $antes.$sig;
//generamos el siguiente codigo de texto
for($i=$b; $i<=$b; $i++)
//mostramos el codigo generado
$cod_final = $i."-".$codigo;//quedaria algo asi ABC-000015
//guardamos el codigo en la base de datos
$guarda = $db->query("INSERT INTO tabla (codigo) VALUE ('$cod_final')");
//mostramos el Codigo
echo $cod_final;