Сервер не редиректит на страницу, в чём проблема?

<?php 
	session_start();  	
	ini_set('display_errors', 1); 	
	ini_set('display_startup_errors', 1);
   	$connect = mysqli_connect("localhost","","","") or die('Не удалось подключиться');
   	$email = $_POST['email'] ;
   	$login = $_POST['login'];
   	$password = password_hash($_POST['password'], PASSWORD_DEFAULT);
   	$tel = $_POST['tel'];
   	$id = $_POST['id'];
	if (isset($_POST['submit-reg'])) {
	$query =  mysqli_query($connect, "SELECT id FROM users WHERE login='$login' LIMIT 1"); 
	$fetch = mysqli_fetch_array($query);
	if ($fetch == 0) {
	$fill = mysqli_query($connect, "INSERT INTO users (id,tel,email,login,password) VALUES ('','$tel','$email','$login','$password')");
	echo "<div style='color:green; font-family: 'Lobster', cursive;'><p style='margin:0; display:inline-block;'>Добро пожаловать,</p>".$login."<p style='margin:0;display:inline-block;'>!</p></div>";
	}
	}elseif ($fetch != 0) {
	echo "<div style='color:red; font-family: 'Lobster', cursive;'>"."<p style='margin:0;'>Пользователь с таким именем уже существует! 	
	</p>"."</div>";
	}
	} 	

    $login2 = $_POST['login2'];
    
    $password2 = $_POST['password2'];
    if (isset($_POST['submit-log'])) {
    $query2 = mysqli_query($connect,"SELECT id FROM users WHERE login ='$login' LIMIT 1");
    $fetch2 = mysqli_fetch_array($query2);
    if ($fetch2 == 1) {
    if ($password2 = password_verify($password, PASSWORD_DEFAULT)) {
    header('Location: /file.php');
    echo "<div style='color:green; font-family: 'Lobster', cursive;'>Вы успешно вошли!</div>";
    $_SESSION['logged_user'] = $login;

    }
    }else{
    	echo "<div style='color:red; font-family: 'Lobster', cursive;'>Пользователь не найден!</div>";
    }
    }

В конце кода при входе, сервер не редиректит на другую страницу, ошибок при этом не выводит. в чём проблема - не знаю.
  • Вопрос задан
  • 133 просмотра
Пригласить эксперта
Ответы на вопрос 2
@Artem0071
Безработный mr. Junior
Потому что ты уже задал заголовки тут:
$fill = mysqli_query($connect, "INSERT INTO users (id,tel,email,login,password) VALUES ('','$tel','$email','$login','$password')");
  echo "<div style='color:green; font-family: 'Lobster', cursive;'><p style='margin:0; display:inline-block;'>Добро пожаловать,</p>".$login."<p style='margin:0;display:inline-block;'>!</p></div>";
  }
  }elseif ($fetch != 0) {
  echo "<div style='color:red; font-family: 'Lobster', cursive;'>"."<p style='margin:0;'>Пользователь с таким именем уже существует! 	
  </p>"."</div>";
  }


Чтобы сделать редирект, ничего нельзя выводить на экран
Ответ написан
Комментировать
Arris
@Arris
Сапиенсы учатся, играя.
Редиректит сервер при помощи заголовка Header: Location. А вы, судя по коду, уже что-то печатаете на экран. Делайте редирект при помощи javascript:

window.location.href=""
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы