Por fin conseguí configurar correctamente el SMPTP server (Mercury Mail) para enviar correos

Se podria decir que lo tengo todo estructurado correctamente recojo el campo del enlace, compruebo que existe el código, si no existe derivo a pagina de registro de nuevo y si existe activo y redirijo a la pagina principal.
Pero los elseif no funcionan


¿Alguien me puede hechar una manita?
Se compensará con cantidades ingentes de Karma

Muchas gracias
J.
Aquí el código:
Código PHP:
<?php session_start();
error_reporting(E_ALL);
ini_set("display_errors", 1);
// Llamo las variables de conexión a DB
require_once ('../recor/LoginDB.php');
// Abro conexión y selecciono la base de datos
$connection = mysql_connect($host, $user, $pass) or die ("Unable to connect!");
mysql_select_db($db) or die ("Unable to select database!");
//Activamos el ususario
//Recuperamos el código de activación y depuramos frente a SQLInjection
if (isset($_GET['codigo'])) {
$codeACT = $_GET['codigo'];
$codeACT = stripslashes($codeACT);
//Comprobamos que el codigo recibido existe en la BBDD
$queryCHECK = mysql_query("SELECT `codigoACT` FROM `personas` WHERE `codigoACT`=$codeACT");
$num_rows = mysql_num_rows($queryCHECK);
//Si el código no existe derivamos a registro de nuevo
}elseif ($num_rows==0) {
echo $num_rows;
echo "activacion incompleta.";
header("location:../Registro_pregunta.php");
//Si existe
}elseif ($num_rows==1){
echo $num_rows;
//Cambiamos el valor 0=desactivado por valor 1=activado
$activo="1";
//Activamos el usuario
$queryACT = "UPDATE personas SET `activo`=$activo Where `codigoACT`=$codeACT";
mysql_query($queryACT) or die(mysql_error());
//Y vamos a la página de inicio
header("location:../home.php");
}else {
//En cualquier otro caso lo derivamos a registro
echo "activacion incompleta.";
header("location:../Registro_pregunta.php");
}
echo $codeACT;
echo $num_rows;
?>