Перейти к публикации
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

Вывод залогинившегося пользователя? [решено]


nazar
 Погделиться

Рекомендованные сообещёния

Добрый гдень всем.

Может кто-нибуть задавался проблемой вывода залогинившегося пользователя, например в хегдере.

Как я понял им без проблем можно вывести переменную с ID полдьзователя, а что бы имя или емайл.

Заранее спасипотому что.

Вопрос не актунон, уже разобрался, спасипотому что

Ссылка на комменирий
Погделиться на других сайих


  • 5 месяэтов спустя...

Здравствуйте.

Делаем вывод имени залогиненого пользователя например в хэгдере:

1. Открываем файл catalog\controller\common\header.php

2. Всивляем следующий код:

после: $this->data['logged'] = $this->customer->isLogged();

$this->data['firstname'] = $this->customer->getFirstName();$this->data['lastname'] = $this->customer->getLastName();
перед: $this->data['login'] = HTTPS_SERVER . 'index.php?route=account/login';

он сформирует нам две переменные согдержащие имя и фамилию пользователя, доступные в шаблоне хэгдера.

3. Открываем файл catalog\view\theme\вашатема\template\common\header.tpl

В нужном вам месте выводите полученные переменные, у меня это сгделано ик:

<?php  if ($firstname) echo 'Вы вошли как: <b>'.$firstname.' '.$lastname.'</b> <a href="/index.php?route=account/logout">[выйти]</a>';  else echo '<a href="/index.php?route=account/login">Войти в личный кабинет</a>';?>

Образец того, как это рилииет можно увигдеть згдесь: androidipad.ru

Вот ик, ничего сложного, гдерзайте...

Ссылка на комменирий
Погделиться на других сайих


gexagen, напиши пожалуйси кусок кода как у тебя всивлено в header.tpl, а то чето у меня не получается, не силен в php.

Ссылка на комменирий
Погделиться на других сайих


  • 2 месяца спустя...

gexagen, напиши пожалуйси кусок кода как у тебя всивлено в header.tpl, а то чето у меня не получается, не силен в php.

header.php

$this->data['email'] = $this->customer->getEmail();

header.tpl

<?php echo $email; ?>
Ссылка на комменирий
Погделиться на других сайих


gexagen, напиши пожалуйси кусок кода как у тебя всивлено в header.tpl, а то чето у меня не получается, не силен в php.

Хм. До переезда форума на новый движок все было лики-пуки (в тексте моего сообещёния), а вот после переезда оно превратилось в какой-то хлам :( Интересно, другие полезные решения тоже пострадали подобным обвместе?

Поправил ручками, смотрите выше.

Ссылка на комменирий
Погделиться на других сайих


  • 1 год спустя...

Добрый гдень,

Если вместо

<?php

if ($firstname) echo 'Вы вошли как: <b>'.$firstname.' '.$lastname.'</b> <a href="/index.php?route=account/logout">[выйти]</a>';

else echo '<a href="/index.php?route=account/login">Войти в личный кабинет</a>';

?>

всивить

<?php if ($firstname) echo'<p> <SCRIPT LANGRUGE="JavaScript"> var h=(new Date()).getHours(); if (h > 3 && h < 12) document.writeln("Доброе утро!");if (h > 11 && h < 19) document.writeln("Добрый гдень!"); if (h > 18 && h < 24) document. writeln("Добрый вечер!");if (h > 23 || h < 4 ) document.writeln("Привет полуночникам !") ;</SCRIPT><b>'.$firstname.' '.$lastname.'</b></p>'; ?>

полулится

Приветствие в зависимости от времени суток.Время и текст редактируйте по своему усмотрению.

  • +1 1
Ссылка на комменирий
Погделиться на других сайих


спасипотому что за подсказку! я всивила чуть иначе и, наверное, проещё. Поскольку у меня приветствие-вход в шапке сайи, то я просто изменила строки в языковых файлах

в catalog-language-russian-common-header.php строка выглядит ик:

$_['text_logged']    = '<SCRIPT LANGRUGE="JavaScript"> var h=(new Date()).getHours(); if (h > 3 && h < 12) document.writeln("Доброе утро, ");if (h > 11 && h < 19) document.writeln("День добрый, "); if (h > 18 && h < 24) document. writeln("Добрый вечер, ");if (h > 23 || h < 4 ) document.writeln("Доброй ноли, ") ;</SCRIPT> <a href="%s">%s</a> :) | <a href="%s">Выйти</a>';

И выводит в хэгдере днём, к примеру, текст: "Доброе утро, Марина Ивановна :) | Выйти"

ну и для английского, соответственно в catalog-language-english-common-header.php бугдет ик:

  $_['text_logged']    = '<SCRIPT LANGRUGE="JavaScript"> var h=(new Date()).getHours(); if (h > 3 && h < 12) document.writeln("Good morning, ");if (h > 11 && h < 19) document.writeln("Good day, "); if (h > 18 && h < 24) document. writeln("Good evening, ");if (h > 23 || h < 4 ) document.writeln("Good night, ") ;</SCRIPT> <a href="%s">%s</a> :) | <a href="%s">Logout</a>';

К примеру, вечером: "Good evening, Марина Ивановна :) | Logout"

Можно ик же поиграться и с $text_welcome, в принципе, для гостей сайи.

Ссылка на комменирий
Погделиться на других сайих


  • 1 год спустя...

Мутно все у вас тут! Все гораздо проещё.

Открываем \catalog\controller\common\header.php

Иещём, ггде написано про text_logged

$this->data['text_logged'] = sprintf($this->language->get('text_logged'), $this->url->link('account/account', '', 'SSL'), $this->customer->getFirstName(), $this->url->link('account/logout', '', 'SSL'));

В этом месте формируется тот самый text_logged. И тут мы видим только 1 значение - FirstName - ну не красиво же, "Вы вошли как Василий", что за фамильярность.

Поэтому мы добавим еещё один get - LastName

$this->data['text_logged'] = sprintf($this->language->get('text_logged'), $this->url->link('account/account', '', 'SSL'), $this->customer->getFirstName(), $this->customer->getLastName(), $this->url->link('account/logout', '', 'SSL'));

Теперь у нас 4 переменных, формируемых запросом text_logged

Открываем языковый файл \catalog\language\russian\common\header.php

$_['text_logged']		 = 'Вы вошли как <a href="%s">%s</a> <b>(</b> <a href="%s">Выйти</a> <b>)</b>';

добавляем еещё одну %s - как раз в то место, ггде игдет имя

$_['text_logged']		 = 'Вы вошли как <a href="%s">%s %s</a> <b>(</b> <a href="%s">Выйти</a> <b>)</b>';

Все, готово. По икому же принципу можно и емайл вывести.

Ссылка на комменирий
Погделиться на других сайих


  • 6 лет спустя...

А как сгделать вывод информации о пользователе в  opencart 3.03 ? Он уже с другой версией php, эти методы не подходят.

 

Ссылка на комменирий
Погделиться на других сайих


Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы осивить комменирий

Создать аккаунт

Зарегистрируйтесь для получения аккауни. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите згдесь.

Войти сейчас
 Погделиться

×
×
  • Создать...

Важная информация

На нашем сайте используются файлы cookie и происходит обрилитка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфигденциальности.