No es correcto que en una función tengas conexión, consulta y desconexión de la base de datos, mucho menos cuando no sabes si realizarás dos o más consultas.
Aparte, hay la posibilidad de que la consulta no genere resultados, por lo que finalizaría el script cuando mysql_fetch_array() devuelva falso.
Código PHP:
Ver original// Primero estableces la conexión y seleccionas la base de datos
// Tu función quedaría más o menos así:
// Cambié los nombres de variables, suponiendo la intención
function Consulta($campos, $tabla, $filtro, $valor) {
global $link; // No es recomendable esto..., pero sólo vamos por la lógica
$sql = "SELECT $campos FROM $tabla WHERE $filtro = '$valor'";
// Devuelves verdadero si ya existe o falso si no
return true;
} else {
return false;
}
}
// Ahora, la función devuelve solo verdadero o falso
// Por cierto, no necesitas leer todo el registro (*), sólo un campo
if(Consulta('cuenta', 'cuentas', 'cuenta', $rcuenta)) {
echo "La cuenta ya existe !";
} else if(Consulta('apodo', 'cuentas', 'apodo', $rapodo)) {
echo "El apodo ya existe !";
} else {
// Es una cuenta nueva
}
// No es necesario cerrar la conexión a base de datos
// Pero, si lo deseas, hazlo al final de tu script