Problem z uzyskaniem przekierowania strony logowania do bezpiecznej strony

Mam stronę logowania, którą utworzyłem przy użyciu php i mam problem z przeniesieniem mnie na stronę administratora po prawidłowym zalogowaniu. Wiem, że login, którego używam, jest poprawny, ponieważ właśnie go stworzyłem, a jeśli się myli, to powinien mi powiedzieć. Jednak po zalogowaniu cała strona jest pusta, a adres internetowy mówi, że nadal jestem na stronie logowania zamiast na stronie administratora.

Sprawdziłem dziennik błędów i mówi: „Ostrzeżenie PHP: Nie można modyfikować informacji nagłówka - nagłówki już wysłane przez (wyjście rozpoczęte w /admin/login.php:6) w /admin/includes/functions.php w linii 4”

To jest kod, do którego odnosi się dziennik błędów:

    function redirect_to($new_location) {
    header("Location: " . $new_location);
    exit;
}

Nie rozumiem, na co wskazuje błąd. Użyłem tego dokładnego kodu wcześniej, kiedy uczyłem się, jak tworzyć strony logowania i strony administracyjne, i nie miałem żadnych problemów, kiedy przetestowałem go, a następnie użyłem WAMP na moim komputerze. Teraz, kiedy umieściłem go na serwerze mojej witryny, ten błąd pojawia się. Nie jestem pewien, od czego zacząć rozwiązywanie problemów, ponieważ jeśli wykręcę tę funkcję, to w ogóle nie przekieruje. Każda pomoc byłaby bardzo mile widziana !!

Oto główny kod, którego używam do strony logowania, jeśli to pomaga:

<?php require_once("includes/session.php"); ?>
<?php require_once("includes/db_connection.php"); ?>
<?php require_once("includes/functions.php"); ?>
<?php require_once("includes/validation_functions.php"); ?>

<?php
$username = "";
if (isset($_POST['submit'])) {
// Process the form

// validations
$required_fields = array("username", "password");
validate_presences($required_fields);

if (empty($errors)) {
    // Attempt Login

    $username = $_POST["username"];
    $password = $_POST["password"];

    $found_admin = attempt_login($username, $password);

    if ($found_admin) {
            // Success
            // Mark user as logged in
            $_SESSION["admin_id"] = $found_admin["id"];
            $_SESSION["username"] = $found_admin["username"];
            redirect_to("http://thehummingbirdplace.com/admin/admin.php");
    } else {
            // Failure
            $_SESSION["message"] = "Username/password not found.";
    }
}
} else {
// This is probably a GET request

}   // end: if (isset($_POST['submit']))

?>

<?php $layout_contect = "admin"; ?>
<?php include("includes/layouts/header.php"); ?>
<div id="main">
<div id="navigation">
    &nbsp;
</div>
<div id="page">
    <?php echo message();  ?>
    <?php echo form_errors($errors); ?>

    <h2>Login</h2>
    <form action="login.php" method="post">
        <p>Username:
            <input type="text" name="username" value="<?php echo htmlentities($username); ?>" />
        </p>
        <p>Password:
            <input type="password" name="password" value="" />
        </p>
        <input type="submit" name="submit" value="Submit" />
    </form>
 </div>
</div>

<?php include("includes/layouts/footer.php"); ?>

questionAnswers(3)

yourAnswerToTheQuestion