Я пробовал использовать функцию заголовка. Но когда я нажимаю кнопку входа в систему, отображается сообщение об ошибке. Мой документ для входа находится в: XAMPP \ htdocs \ Website \ includes \ login.inc.php Мой индексный документ находится в: XAMPP \ htdocs \ Website \ index.php
Надеюсь, кто-нибудь сможет помочь.
<?php
session_start();
if (isset($_POST['submit'])) {
include 'dbh.inc.php';
$gebr = mysqli_real_escape_string($conn, $_POST['gebr']);
$pwd = mysqli_real_escape_string($conn, $_POST['pwd']);
//Foutmeldingen
//Check of de velden leeg zijn
if (empty($gebr) || empty($pwd)) {
header("Location: ../index.php?login=empty");
exit();
} else {
$sql = "SELECT * FROM stemmer WHERE Naam='$gebr'";
$result = mysqli_query($conn, $sql);
$resultCheck = mysqli_num_rows($result);
if ($resultCheck < 1) {
header("Location: ../index.php?login=error");
exit();
} else {
if ($row = mysqli_fetch_assoc($result)) {
if ($row['Wachtwoord'] != $pwd) {
header("Location: ../index.php?login=error");
exit();
} else{
//Log de gebruiker hier in
$_SESSION['u_id'] = $row['idStemmer'];
$_SESSION['u_naam'] = $row['Naam'];
$_SESSION['u_gemeente'] = $row['idGemeente'];
$_SESSION['u_partij'] = $row['idPartij'];
header("Location: ../index.php?login=succes");
exit();
}
}
}
}
} else {
header("Location: ../index.php?login=error");
exit();
}
Ошибка 404. URL-адрес не найден на сервере.
Когда вы включаете файл, URI не изменяется. Таким образом, вы по-прежнему ссылаетесь на ссылки или местоположения на основе загруженного URI.
Основываясь на вашей ошибке 404, вполне вероятно, что вы включаете этот файл из того же веб-каталога, что и index.php, поэтому местоположение не должно быть установлено на ../index.php?login=error
, который будет пытаться вернуться на один каталог назад, но index.php?login=error
, который попытается загрузить index.php в том же веб-каталоге.
Вы также можете использовать /index.php?login=error
(префикс /
), который загрузит index.php из корневого каталога Интернета. Если вы собираетесь загружать этот включаемый файл во множество разных файлов, лучше всего использовать относительные корневые пути, подобные этому.
Вы можете использовать буферизацию вывода, чтобы обойти эту проблему, при этом накладные расходы на весь ваш вывод в браузер буферизуются на сервере до тех пор, пока вы его не отправите. Вы можете сделать это, вызвав ob_start () и ob_end_flush () в вашем скрипте или установив директиву конфигурации output_buffering в вашем php.ini или файлах конфигурации сервера.
Используйте ob_start()
Для получения дополнительной информации прочтите это Заметки
Не уверен, помогает ли это с ошибкой «Ошибка 404. URL-адрес не найден на сервере». в комментариях OP.
Ну что за сообщение об ошибке? У них есть цель. Имейте в виду, что заголовки не могут быть отправлены после тела, поэтому вы не можете ничего распечатывать перед заголовками, включая пробелы в любых файлах до
<?php
.