New question

Question:

Date: 13-09-2019 16:05:06 (In Spanish)

Error en al mostrar el mensaje con el estado del registro con php7[Resolved]

Hola comunida.
Estoy practicando un poco mi php, resulta que no se si he olvidado un paso importante cuando intento mostrar el estado de un registro en php y al tratar de registrar y oprimir el boton de registro no me esta mostrando ningun error o exito en por pantalla,

PD: El registro no guarda nada en base de datos, porque aun no he llegando a esa parte y estoy intentando resolver el problema que tengo actualmente.

Codigo PHP:
<?php

require_once 'view/register.php';

// Declaramos la variables de error o exito
$error = "";
$exito = "";

// Resivimos los datos que nos estan llegando
if(isset($_POST['submit'])){

    $name = $_POST['name'];
    $surname = $_POST['surname'];
    $email = $_POST['email'];
    $pass = $_POST['pass'];
    $pass2 = $_POST['pass2'];

    // Cifrar la pass
    $pass = hash('sha512', $pass);
    $pass2 = hash('sha512', $pass2);

    // Verificar que los datos no estan vacios
    if(empty($_POST['submit'])){
        $error .= "No puedes dejar campos vacios <br/>";
    }

    // Confirmamos que coicidan las contraseñas
    if($pass != $pass2){
        $error .= "La contraseña no coiciden <br/>";
    }

    // Limpiamos los datos que nos esten llegando
    $name = htmlspecialchars($name);
    $name = trim($name);
    $name = filter_var($name, FILTER_SANITIZE_STRING);
    $name = ucfirst($name);

    $surname = htmlspecialchars($surname);
    $surname = trim($surname);
    $surname = filter_var($surname, FILTER_SANITIZE_STRING);
    $surname = ucfirst($surname);

    $email = htmlspecialchars($email);
    $email = trim($email);
    $email = filter_var($email, FILTER_VALIDATE_EMAIL);

    // Validamos que el correo sea valido
    if($email == false){
        $error .= "Este no es un email valido <br/>";
    }

    // Damos al usuario de alta luego de pasar todos los pasos
    if($error == ''){
        $exito = "Te has registrado con exito";
    }
    
}

?>


Tengo el codigo HTML separado del codigo PHP
Codigo HTML:
<!DOCTYPE html>
<html lang="es">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Registrate - Tarea</title>
    <!-- Google Fonts -->
    <link href="https://fonts.googleapis.com/css?family=Open+Sans&display=swap" rel="stylesheet">
    <!-- Style CSS -->
    <link rel="stylesheet" href="css/style.css">
</head>
<body>
    <main>
        <article>
            <form action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']); ?>" method="POST">
                <label for="name">Nombre:</label><br/>
                <input type="text" name="name" id="name"><br/><br/>

                <label for="surname">Apellidos:</label><br/>
                <input type="text" name="surname" id="surname"><br/><br/>

                <label for="email">Correo electronico:</label><br/>
                <input type="text" name="email" id="email"><br/><br/>

                <label for="pass">Contrase&ntilde;a:</label><br/>
                <input type="password" name="pass" id="pass"><br/><br/>

                <label for="pass2">Repite la Contrase&ntilde;a:</label><br/>
                <input type="password" name="pass2" id="pass2"><br/><br/>

                <button type="submit" name="submit">Registrarse</button>
            </form>

            <?php if(isset($error) || isset($exito)) : ?>
                <p class="error"><?php echo $error; ?></p>
                <p class="exito"><?php echo $exito; ?></p>
            <?php endif ?>

            <p>Ya tienes cuenta ?</p>
            <a href="index.php">Inicia Sesion</a>

        </article>
    </main>
    
</body>
</html>
Tags: Error - PHP Votes: 0 - Answers: 2 - Views: 3 Share on: Google Facebook Twitter LinkedIn Link
 

Answers:

  • Date: 16-09-2019 10:03:58 Segun tu codigo expuesto , solo muestras mensaje si existe error, y eso se ve claramente aqui

    <?php if(isset($error) || isset($exito)) : ?>
    <p class="error"><?php echo $error; ?></p>
    <p class="exito"><?php echo $exito; ?></p>
    <?php endif ?>

    ahora si quieres mostrar un mensaje de que no ha ocurrido algun error
    debes agregarle un else


     <?php if(isset($error) || isset($exito)) { ?>
      <p class="error"><?php echo $error; ?></p>
                    <p class="exito"><?php echo $exito; ?></p>
     } else { ?>
         <p> No ocurrió ningun error </p>
    <?php } ?>
    



    espero haya ayudado

    saludos
    Jose
      Votes: 0 - Link answer
     
  • Date: 16-09-2019 11:00:11 Hola Juan, ya he logrado solucionar el problema y era que estaba colocando el codigo php en la raiz de la carpeta y el codigo HTML en una carpeta llamada view y tal parece debia hacer alrevez, el codigo HTML en la raiz del proyecto y el codigo PHP en lo contrario de lo yo estaba haciendo, en este caso hacerlo en una capeta que se pudiera llamar en backend por ejemplo, por decir un nombre.

    Ya esta pregunta ha sido solucionada, un saludo y buen codigo.
      Votes: 0 - Link answer
     
To actively participate in the community first must authenticate, enter the system.Sign In
 
frjcbbae garagebible.com