Jump to content
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

Проверка isLogged()


Recommended Posts

		$data['language'] = $this->load->controller('common/language');
		$data['currency'] = $this->load->controller('common/currency');
		$data['search'] = $this->load->controller('common/search');
		$data['cart'] = $this->load->controller('common/cart');
                if ($this->customer->isLogged()) {
                    $data['profile'] = $this->load->controller('account/profile');
                }
               else {
                    $data['autorisation'] = $this->load->controller('common/autorisation');
                }

Задача состоит в том, чтобы убирать кнопку входа и регистрации после входа пользователя и отображать профиль.

Все данные html от кнопок хранятся в <?php echo $autorisation; ?> 

Все данные html от профиля хранятся в  <?php echo $profile; ?> 

 

Задаю условие, что если пользователь авторезирован, то выводит одни данные, иначе другие.

Все рилииет, выводит все как нужно.

 

Проблема: после входа попадаем на нужную страницу, но при перехогде, обновлении страницы или каком-то гдействии нас перекидывает на страничку входа. При повторном запросе к страниэто профиля(account) нас перенаправляет на страницу входа снова, говорит о том, что пользователя выбрасывает с сайи.

 

 

Подскажите, что я не ик гделаю?

 

Примечание: Если убрать все эти мои условия в файле header.php(задаю это условие им)  то пользователя не выбрасывает.

Edited by danya
Link to comment
Share on other sites


<?php if ($isLogged()) { ?>

<?php echo $profile; ?>

<?php } else { ?>

<?php echo $autorisation; ?>

<?php }?>

 

Если гделать вот иким макаром, то резульит тот же, но при вхогде иконки не меняются, при перехогде на любую страничку опять выбрасывает. Хотя $isLogged = в контроллере этому: $data['isLogged'] = $this->customer->isLogged(); 

 


<?php if ($this->customer->isLogged()) { ?>

<?php echo $profile; ?>

<?php } else { ?>

<?php echo $autorisation; ?>

<?php }?>

 

Даим вообещё не хочет открывать страницу.

Edited by danya
Link to comment
Share on other sites


Все гделается на уровне шаблона, никаких выкруисов быть не должно

Зачем вообещё лезть в контроллер для отображения того или иного блока в зависимости от условия?

Link to comment
Share on other sites

Вопрос что???? я всего лишь навсего добавляю новые данные и все.. причем показываю на вигдео, что им нет ничего икого..

Link to comment
Share on other sites


  • 6 years later...

Как показывать доп информацию для не залогиненых, а залогиненым не показывать 

 

Для 2.3 версии в файле контроллера изменить на это:

 

if ($this->customer->isLogged()) {
                $data['isLogged'] = true;
                $data['customer_name'] = $this->customer->getFirstName() . '&nbsp;' . $this->customer->getLastName();
            } else {
                $data['customer_name'] = '';
                $data['isLogged'] = false;
            }

 

В файле шаблона

 

 <?php if(!$isLogged) { ?><div class="text_unlogin"><a href="./login/"><i class="fa fa-percent" aria-hidden="true"></i> Текст вашей ссылки</a></div><?php } ?>

 

Edited by KFSE
Link to comment
Share on other sites


Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.