Estoy intentando crear una página que me dé de alta un usuario en una base de datos. El formulario se muestra perfectamente, el problema es que cuando doy a ALTA, me aparece el formulario de nuevo con los campos vacíos y no se me añade ninguna entrada en la BD. Creo que el problema debe de estar en la parte en que manda la información, ya que si el error llegase a conectar con la base de datos, me reportaría el error que le tengo en el "echo". Os dejo el código completo de la pag.
Código PHP:
  
<html>
<head></title>alta usuarios</title></head>
<body>
    <?php
    if ($submit):
    $dbcnx=mysql_connect("localhost", "usuario", "contraseña");
    if (!$dbncx) {
    echo ("Error al conectar a la bd");
    exit();
    }
    $sell=mysql_select_db("database");
    if (!sell) {
    echo ("Fallo al conectar a la database");
    exit();
    }
    $sql = "INSERT INTO registrados SET 
    nombre='$nombre',
    nick='$nick',
    email='$email'";
    if (mysql_query($sql)) {
    echo("<p>Usted se ha dado de alta satisfactoriamente</p>");
    } else {
    echo("<p>Lo sentimos, pero ha ocurrido un error. Inténtelo de nuevo más tarde.: " . mysql_error() . "</p>");
    }
    ?>
    <p><a href="<?=
    $PHP_SELF?>">Añadir un nuevo forero.</a></p>
    <?php
    else:
    ?>
    <form action="<?=$PHP_SELF?>" method="post">
    <p>Introduzca sus datos:<br>
    Nombre: <input type="text" name=
    "nombre" size="20"
    maxlength="255" /><br>
    Nick: <input type="text" name=
    "nick" size="20"
    maxlength="255" /><br>
    Email: <input type="text" name=
    "email" size="20"
    maxlength="255" /><br>
    <input type=submit name="$submit" value=
    "ALTA">
    <input type=reset value="Borrar"></p>
    </form>
    <?php endif; ?>
</body>
</html>   Saludos-
 
