У меня есть форма регистрации для пользователей. Когда они нажимают кнопку «Создать учетную запись», она переходит на страницу insertUser.php, которая вставит пользователя в базу данных и создаст $ _SESSION ["message"] = "Регистрация завершена. Перейдите к входу в систему" в случае успешной вставки. Затем страница insertUser.php перенаправляет на страницу index.php с открытой формой регистра, чтобы пользователь мог увидеть сообщение. Но это показывает ошибку Undefined Index: message
. Я делаю то же самое в форме входа в систему, чтобы показать ошибки, и все работает нормально, поэтому я не знаю, в чем проблема.
вот мой код index.php:
<div class="register-form">
<form action="insertUsers.php" method="POST" id="formregisto" name="formregisto">
<div>
<input type="text" name="username" placeholder="Nome de Utilizador" required/>
</div>
<div>
<input type="email" name="email" placeholder="E-mail" required/>
</div>
<div>
<input type="password" name="password" id="password" placeholder="Password" required/>
</div>
<div id="message"><?php if (!isset($_SESSION["message"])) print $_SESSION["message"]?> </div>
<div>
<input type="submit" name="criar" value="Create Account"/>
</div>
</form>
</div>
insertUsers.php:
<?php
include "include/config.php";
$username= $_REQUEST['username'];
$email= $_REQUEST['email'];
$password= md5($_REQUEST['password']);
if( !empty ($username) AND !empty ($email) AND !empty ($password)){
$sql="insert into users(email, username, password) values ('$email', '$username','$password')";
$result=mysqli_query($link, $sql);
if ($result)
$_SESSION["message"]= "Registration Complete. Proceed to login";
header('Location: index.php?openr=1');
} else {
$_SESSION["message"]= "Something went wrong, try again";
header('Location: index.php?openr=1');
}
?>