Имя пользователя на главной странице

Статус
В этой теме нельзя размещать новые ответы.

black_voron

Писатель
Регистрация
1 Июл 2009
Сообщения
3
Реакции
0
Хочу над корзиной на каждой странице вывести обращение к пользователю, при этом необходимо вывести его имя, указанное в профиле.
Если находится в профиле пользователя, то его имя хранится в переменной smarty $last_name, но вот на других страницах магазина эта переменная пустая, и имя не выводится.:nezn:
 
а всё потому что пользователь не подгружен на других страницах.
копай в папке includes -
сначала что в basket файле находится и закинь эту переменную
на другие страницы - category product из папки includes

в теории так.
 
Спасибо, таки натолкнул на путь истинный.
Нашел функцию regGetContactInfo которая вытягивает из бызы данные по аккаунту имея логин пользователя.
Добавил в includes/category.php код
PHP:
if (isset($_SESSION["log"])) //show user's account
	{
		$cust_password				= null;
		$Email						= null;
		$first_name					= null;
		$last_name					= null;
		$subscribed4news			= null;
		$additional_field_values	= null;
		regGetContactInfo( $_SESSION["log"], $cust_password, $Email, $first_name,
				$last_name, $subscribed4news, $additional_field_values );
		$smarty->hassign("first_name", $first_name );
		$smarty->hassign("last_name", $last_name );
}
и теперь в любом месте шаблона можно вывести имя пользователя через
{$last_name}
 
А как вывести если пользователь есть то (ИМЯ) если нет то (0).
Знаю что надо if и else,но как правильно написать не силён ещё я в php :confused:
 
newtimes написал(а):
А как вывести если пользователь есть то (ИМЯ) если нет то (0).
Знаю что надо if и else,но как правильно написать не силён ещё я в php
Smarty:
Код:
{if $log}
  {$log}
{/if}

or

{if $smarty.session.log}
  {$smarty.session.log}
{/if}

PHP and HTML Template:
Код:
if(isset($_SESSION['log']) and !empty($_SESSION['log'])):
 echo $_SESSION['log'];
else:
 echo false;
endif;

or syntax 

if(isset($_SESSION['log']) and !empty($_SESSION['log'])) { 
  echo $_SESSION['log'];
}
else { 
  echo false; 
}

//echo replace Smarty ($smarty->assign('const', value))

В общем постарался более подробно! В лучшем случае прибегнуть хотя бы к man(manual)
 
Не люблю прибегать к мануалам ,потомучто там расписано всегда не так как надо тому кто их читает,а именно:
всётаки , ещё раз,открыл мануал и искал чтонибудь про Smarty.Что такое Smarty я нашёл,но как с ним работать в данном скрипте,так и не понял.
Что хотел понять:
Smarty:
Код:
{if $log}
  {$log}
{/if}
or
{if $smarty.session.log}
  {$smarty.session.log}
{/if}
Этот код вставлять в index.php,в папку smarty(в какой файл?) или ещё куда?
Спасибо ,конечно ,расписали вы как могли подробно,но что поделать такой уж я бесталковый,потому и ищу помощи на этом форуме.
И ещё про мануалы(может быть это касается только меня,не знаю:(
при изучении HTML прошерстил не мало книг,так ничего и не понял.Открыл исходный код и стал смотреть что к чему,разобрался,потом полез опять в книгу,и только после практики я смог познать теорию.
Но в SS не только HTML тут и php и smarty, это посложнее будет(во всяком случае для меня)
вот и хочется чтобы к кодам прилогались имена файлов, а не просто значение кода. Ну и конечно же за уделённое внимание жму КНОПКУ.

black_voron,при вашем коде

Спасибо, таки натолкнул на путь истинный.
Нашел функцию regGetContactInfo которая вытягивает из бызы данные по аккаунту имея логин пользователя.
Добавил в includes/category.php код
PHP:
if (isset($_SESSION["log"])) //show user's account
	{
		$cust_password				= null;
		$Email						= null;
		$first_name					= null;
		$last_name					= null;
		$subscribed4news			= null;
		$additional_field_values	= null;
		regGetContactInfo( $_SESSION["log"], $cust_password, $Email, $first_name,
				$last_name, $subscribed4news, $additional_field_values );
		$smarty->hassign("first_name", $first_name );
		$smarty->hassign("last_name", $last_name );
}
и теперь в любом месте шаблона можно вывести имя пользователя через
{$last_name}

я могу видеть только сам себя,т.е.зарегистрированный пользователь видит только своё имя,если есть ктото ещё на сайте то других не видит,а надо чтобы даже не зарегиный видел всех кто есть (зарегистрированных) на сайте.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху