Задать вопрос
@Vercaceee

Ошибка в php, как исправить?

<?php
session_start();
require_once __DIR__ . '/scr/connect.php';
$connect = getDB();
$idUser = $_SESSION['user']['id'];
if ($idUser == '') {
}else{
    header("Location: /profile.php");
}


Ошибки
Warning
: Undefined array key "user" in
\index.php
on line
4

Warning
: Trying to access array offset on value of type null in
\index.php
on line
4
Когда сессия запушена, варнингов нет, когда не запушена - появляються
  • Вопрос задан
  • 29 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
Fernus
@Fernus
Техник - Механик :)
$_SESSION['user']['id'] - сюда изначально записывается "что-то" ?

Если тупо "проверку" нужно сделать(беря во внимание, что всё таки туда "когда-то что-то записывалось"), то:

<?php

session_start();

require_once __DIR__ . '/scr/connect.php';

$connect = getDB();

if (!empty($_SESSION['user']['id']) && $_SESSION['user']['id'] == 'XYZ') {

    $idUser = $_SESSION['user']['id'];

}else{

    // Пусто в сессии...

    header("Location: /profile.php");

}


UPD:
Хотя проверка какая-то тупая...наверное вот так должно быть:

<?php

session_start();

require_once __DIR__ . '/scr/connect.php';

$connect = getDB();

if (!isset($_SESSION['user']['id'])) {

    // Пусто

}else{

    $idUser = $_SESSION['user']['id'];

    header("Location: /profile.php");

}
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
IT ATLAS Москва
от 250 000 до 500 000 ₽