Php redirige a una URL incorrecta cuando se maneja un error (inicio de sesión)

Necesito un poco de ayuda para resolver este problema. Actualmente tengo un sitio web con una base de datos adjunta con myphpadmin / sql.

Tengo un sitio de registro que redirige a los usuarios a esta URL cuando los campos de registro están vacíos. ( http: //localhost/register.php? signup = empty )

el problema que tengo es que cuando bash iniciar sesión en mi página de inicio de sesión, quiero que el usuario sea redirigido a estos dos url cuando ocurra un error o campos vacíos. (index.php? login = empty) y (index.php? login = error). Pero en cambio me redireccionan a ( http: //localhost/register.php? Signup = empty ).

Por lo tanto, creo que mis botones en la página de inicio de sesión están vinculados a algo que no está bien. Pero realmente no puedo ver para resolver el problema. Por lo que cualquier ayuda se agradece.

Este es mi código.

INDEX.php  <!DOCTYPE html     CSS Login form      LOGIN.php <?php session_start(); if (isset($_POST['submit'])) { include 'dbh.inc.php'; include 'register.php'; $name = mysqli_real_escape_string($conn, $POST['name']); $password = mysqli_real_escape_string($conn, $POST['password']); //check inputs if (empty($name) || empty($password)) { header("Location: ../index.php?login=empty"); exit(); } else { $sql = "SELECT * FROM users WHERE user_name='$name'"; $result = mysqli_query($conn, $sql); $resultCheck = mysqli_num_rows($result); if ($resulstCheck < 1) { header("Location: ../index.php?login=error"); exit(); } else { if ($row = mysqli_fetch_assoc($result)) { //de-hashing password $hashedPasswordCheck = password_verify($password, $row['user_password']); if ($hashedPasswordCheck == false) { header("Location: ../index.php?login=error"); exit(); } elseif ($hashedPasswordCheck == true) { //If true log the user in $_SESSION['u_id'] = $row['user_id']; $_SESSION['u_name'] = $row['user_name']; $_SESSION['u_phone'] = $row['user_phone']; $_SESSION['u_email'] = $row['user_email']; $_SESSION['u_zip'] = $row['user_zip']; header("Location: ../index.php?login=success"); exit(); } } } } } else { header("Location: ../index.php?login=error"); exit(); } REGISTER.php  0) { header("Location: ../signup.php?signup=usertaken"); exit(); } else { //Hashing of the Password $hashedPwd = password_hash($password, PASSWORD_DEFAULT); //Insert user to database $sql = "INSERT INTO users (user_name, user_phone, user_email, user_zip, user_password) VALUES ('$name', '$phone', '$email', '$zip', '$hashedPwd');"; mysqli_query($conn, $sql); header("Location: ../signup.php?signup=success"); exit(); } } } } } ?>       









En la parte superior de login.php you

 include 'register.php'; 

La consecuencia es que se ejecuta register.php, se ve el empty($name) || empty($phone)... empty($name) || empty($phone)... y redirige al header("Location: ../register.php?signup=empty");

La solución simple: eliminar eso include 'register.php';