Не удается получить доступ к переменным сеанса в переполнении стека

Я пытаюсь использовать переменную сессии $_SESSION['name'] на второй странице т.е. review.php,
но это ничего не дает мне на второй странице. Как использовать переменную Session на второй странице?
Это index.php

  <?php
session_start();
$connect = mysqli_connect('localhost','root','root','review');
if(isset($_POST['submit']))
{
$id = $_POST['id'];
$_SESSION['name']  = $id;
}



?>

<!DOCTYPE html>
<html>
<head>
<title>
login
</title>
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css">
</head>
<body>
<form action="review.php">
<input type="text" name="id" placeholder="id">
<input type="password" name="password" placeholder="password">
<input type="submit" name="submit" class="btn btn-success">
</form>
</body>
</html>

здесь review.php

<?php

session_start();
$connect = mysqli_connect('localhost','root','root','review');
if(isset($_SESSION['name']))
{
echo $_SESSION['name'];
}
else{
echo "nothing";
}

?>

0

Решение

У вас есть 2 проблемы:

  1. Вы отправляете отправленную форму на review.php, поэтому вы должны прочитать данные формы в review.php
  2. Вы не задали форму method, По умолчанию method является GET, но ты читаешь $_POST переменная. (Какой метод HTTP используется по умолчанию для формы?)

Так что вы должны изменить index.php следующим образом:

<?php
session_start();
$connect = mysqli_connect('localhost','root','root','review');
if(isset($_POST['submit']))
{
$id = $_POST['id'];
$_SESSION['name']  = $id;
}
?>

<!DOCTYPE html>
<html>
<head>
<title>
login
</title>
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css">
</head>
<body>
<form method="post">
<input type="text" name="id" placeholder="id">
<input type="password" name="password" placeholder="password">
<input type="submit" name="submit" class="btn btn-success">
</form>
</body>
</html>
0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector