$result = mysql_query('... query that produces duplicate key error ...');
if ($result === FALSE) {
if (mysql_errno() == 1022) {
die("Username already exists");
} else {
die(mysql_error());
}
}
Los códigos de error están documentados aquí:http:/ /dev.mysql.com/doc/refman//5.5/en/error-messages-server.html y puede escribir su propio controlador de errores personalizado para generar mensajes de error 'mejores' si así lo desea.