То, что я пытаюсь сделать, есть страница HTML, которая является формой входа администратора. Я хочу передать имя пользователя на другие страницы, чтобы убедиться, что пользователь вошел в систему, прежде чем ему будет разрешен доступ к функциям вызываемой страницы.Я не могу получить переменную сеанса во втором PHP-файле
У меня есть этот код в файл PHP, который включен в файл .html:
session_start();
session_register('username');
$_SESSION['id']=10;
echo "Login session id is " .$_SESSION['id'];
unset($_SESSION['username']);
// Only process POST reqeusts.
if ($_SERVER["REQUEST_METHOD"] == "POST")
{
require_once 'config.inc.php';
$connect = mysqli_connect($host_name, $user_name, $password, $database);
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
else
{
$uName = $_POST['name'];
$_SESSION['username'] = $uName;
echo $_SESSION['username'];
.....> больше к файлу, но это показывает имя пользователя просто отлично.
Во втором файле, что является .html файл с PHP встраиваемого в файле:
<?php
session_start();
echo "Add user session id is ";
echo "<br>";
echo $_SESSION['id'];
echo "<br>";
echo "Hello";
echo "<br>";
echo $_SESSION['username'];
echo "<br>";
echo $_SESSION;
echo "<br>";
echo $_SESSION['time'];
echo "<br>";
echo date('Y m d H:i:s', $_SESSION['time']);
жесткий текст кода и «эхо даты ('Y мкр H: я: S', $ _SESSION [ 'время']);" дисплей хорошо. Дата эха линии ('Y m d H: i: s', $ _SESSION ['time']); отображает массив сусла.
Может ли кто-нибудь сказать мне, почему я не могу получить значение имени пользователя?
удалить пробелы в второй файл перед 'session_start();' Это будет работать – Mubin
@Mubin Мне любопытно, как отступы файла может привести к сбою? – Script47
Почему вы все еще используете 'session_register', который устарел давным-давно. – CBroe