Проблема с PHP-сессиями, помогите пожалуйста - PullRequest
1 голос
/ 15 сентября 2010

Я делаю магазин предметов для игры моих друзей, когда я захожу в магазин, я проверяю сессию, чтобы увидеть, вошли ли вы в систему, если это так, она доставит вас в магазин, если вы нет.Это не даст вам страницу входа, как я это делаю, как это.

<?php 
  if($_SESSION['LoggedIn'] == 1)
  {
      //Shop stuff here
  }
  else
  {
    //Login stuff here
  }
?>

Однако, когда они не вошли в систему, отображается ошибка.

Уведомление: Неопределенный индекс: залогинен в C: \ wamp \ www \ shop \ shop.php в строке 29, строка 29 - if($_SESSION['LoggedIn'] == 1) Я хочу, чтобы это не происходило без отключения ошибок PHP, вы понимаете, как?

Ответы [ 6 ]

3 голосов
/ 15 сентября 2010

Сделайте это вместо:

if (isset($_SESSION['LoggedIn']) && $_SESSION['LoggedIn'] == 1)
2 голосов
/ 15 сентября 2010

Использование isset():

if(isset($_SESSION['LoggedIn']) && $_SESSION['LoggedIn'] == 1) {
  // ...
}
1 голос
/ 15 сентября 2010

Чтобы разнообразить ответы, я бы хотел дать вам пусто :

if(!empty($_SESSION['LoggedIn'])){
    //Shop stuff here
}
else{
    //Login stuff here
}
0 голосов
/ 15 сентября 2010

... или политически неверный ответ if (@$_SESSION['LoggedId'] == 1) {...};)

0 голосов
/ 15 сентября 2010

для использования $ _SESSION важно сначала запустить сеанс с инструкцией session_start ();

session_start();

if($_SESSION['LoggedIn'] == 1)
{
  //Shop stuff here
}
else
{
//Login stuff here
}

, если этот оператор отсутствует, сеанс не будет открытым, это означает, что каждая информация, котораяВы уже указали, что там будет недоступен, поэтому будьте осторожны при чтении или записи в $ _SESSION

0 голосов
/ 15 сентября 2010

Вы можете использовать

if(isset($_SESSION['LoggedIn']))
{
    //Shop stuff here
}
else
{
    //Login stuff here
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...