20
Июл
2021

if(!isset($_COOKIE[‘user’]) || !isset($_COOKIE[‘admin’])):

Вообщем я столкнулся с такой проблемой: Мне надо сделать проверку сохранена ли cookie ['user'] или ['admin']. Если нет, то выводить в header болк с кнопкой входа/регистрации, а если есть, то проверить isset($_COOKIE['admin']). Если да, то вывести блок с кнопками добавить товар и выход, если isset($_COOKIE['admin']) неверно, то просто кнопку выхода. Весь код рабочий, если по одиночке делать проверку(Например:if(!isset($_COOKIE['admin'])):), то выведет кнопки добавить товар и выход, а если (if(!isset($_COOKIE['user'])):), то только кнопку выхода. Вот основной код:

<?php 
  if(!isset($_COOKIE['user']) || !isset($_COOKIE['admin'])):
     ***Кусок html разметки***
?>
<?php else: ?>
     <?php if(isset($_COOKIE['admin'])): ?>
         ***Кусок html разметки***
     <?php endif; ?>
     ***Кусок html разметки***
<?php endif; ?>

У меня не получается всё это объединить, чтобы была одновременная проверка двух cookie.

if(!isset($_COOKIE['user']) || !isset($_COOKIE['admin'])):
Не рабочий код(но в моём уме он должен работать))

Может кто-то знает как эту проблему решить?

<?php                      
   if(!isset($_COOKIE['user']) || !isset($_COOKIE['admin'])) {                         
      echo('                             
         HTML Code                         
      ');                     
   } else {                         
      if(isset($_COOKIE['admin'])) {                             
         echo('                                 
           HTML Code                             
         ');                         
   };                         
   echo('                             
      HTML Code                         
   ');                     
   };                 
?>

Код выше не решает проблему и пробный вариант. Это код создания куки при авторизации:

<!-- В auth.php (авторизация) -->
    else if ($user['admin'] != 0) {
        setcookie("admin", $user['name'], time() + (3600 * 12 * 30), "/"); // 1(имя куки) 2(у переменной $user берём имя, которое берётся с бд) 3(время жизни куки)
        header('location: /');
        session_destroy();
        exit();
    } else {
        setcookie("user", $user['name'], time() + (3600 * 12 * 30), "/"); // 1(имя куки) 2(у переменной $user берём имя, которое берётся с бд) 3(время жизни куки)
        header('location: /');
        session_destroy();
    };

Источник: https://ru.stackoverflow.com/questions/1306911/ifisset-cookieuser-isset-cookieadmin

Тебе может это понравится...

Добавить комментарий