Уважаемые пользователи, по техническим причинам загрузка файлов временно недоступна. Приносим извинения за временные неудобства.
Возраст и user_from на все страницы
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды
Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение
).
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды
Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение
-
ВладимирТ
- phpBB 2.0.4
- Сообщения: 421
- Стаж: 16 лет 4 месяца
- Откуда: Москва
- Благодарил (а): 52 раза
- Поблагодарили: 75 раз
Возраст и user_from на все страницы
Подскажите возможно отображать возраст и поле "Откуда" на всех страницах форума, глобально или выборочно.
В шапке поставил имя пользователя и аватару, с которыми вроде боле менее все понятно, они отображаются на всех страницах, а вот с возрастом и "Откуда" не получается.
В шапке поставил имя пользователя и аватару, с которыми вроде боле менее все понятно, они отображаются на всех страницах, а вот с возрастом и "Откуда" не получается.
На вкус и цвет - разный CSS
-
Sheer
- Former team member
- Сообщения: 12113
- Стаж: 19 лет 8 месяцев
- Откуда: Калининград не Кенигсберг
- Благодарил (а): 54 раза
- Поблагодарили: 2756 раз
Re: Возраст и user_from на все страницы
Можно. Только зачем на всех страницах-то?
Что делал, куда ставил?ВладимирТ писал(а):а вот с возрастом и "Откуда" не получается.
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
-
ВладимирТ
- phpBB 2.0.4
- Сообщения: 421
- Стаж: 16 лет 4 месяца
- Откуда: Москва
- Благодарил (а): 52 раза
- Поблагодарили: 75 раз
Re: Возраст и user_from на все страницы
Сделал я дополнительное меню которое отображается почти на всех страницах, после overall_header.html, в нем помимо списка самого меню, по задумке отображается аватара пользователя, имя, возраст, город, страна и последнее посещение.Sheer писал(а):Можно. Только зачем на всех страницах-то?
Имя и последнее посещение - выводятся без проблем поскольку это глобальные переменные.
Аватар - решил с помощью переноса функции get_user_avatar() из файла includes/functions_display.php в includes/functions.php (по совету Nekstati) и добавлением переменной
Код: Выделить всё
'USER_AVATAR' =>($user->optionget('viewavatars') && function_exists('get_user_avatar')) ? get_user_avatar($user->data['user_avatar'], $user->data['user_avatar_type'], $user->data['user_avatar_width'], $user->data['user_avatar_height']) : '',Страна - думаю решить с помощью мода "Country Flags User Edition" там вроде есть решение глобального вывода переменной.
Осталось вывести Возраст и Город
С переменными вроде немного понятно
Код: Выделить всё
'AGE' => $age,
'LOCATION' => ($member['user_from']) ? $member['user_from'] : '',На вкус и цвет - разный CSS
-
Sheer
- Former team member
- Сообщения: 12113
- Стаж: 19 лет 8 месяцев
- Откуда: Калининград не Кенигсберг
- Благодарил (а): 54 раза
- Поблагодарили: 2756 раз
Re: Возраст и user_from на все страницы
В phpBB3 есть такой замечательный волшебный глобальный класс, имя которомуВладимирТ писал(а):поскольку это глобальные переменные.
$userОттуда можно извлечь все.
Код: Выделить всё
'AGE' => $user->data['user_birthday'],
'LOCATION' => $user->data['user_from'],AGE будет выводиться в форматеdd-mm-yyyy (день-месяц[цифрами без ведущих нулей]-год), так как записано в БД. Если пририсовать функцию преобразования в нужный формат, то будет красиво.Развлекайся:
Код: Выделить всё
<?php
define('IN_PHPBB', true);
$phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);
// Start session management
$user->session_begin();
$auth->acl($user->data);
$user->setup();
print "<pre>"; print_r($user); print "</pre>"
?>Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
-
ВладимирТ
- phpBB 2.0.4
- Сообщения: 421
- Стаж: 16 лет 4 месяца
- Откуда: Москва
- Благодарил (а): 52 раза
- Поблагодарили: 75 раз
Re: Возраст и user_from на все страницы
Спасибо Sheer, здорово!, $user действительно волшебный класс!
Вывел все что хотел и даже больше, жизнь омрачает только формат даты рождения,
понятно что надо вычесть из настоящей даты, дату рождения, но у самого функцию преобразования
написать не получается.
Может есть похожее решение?
Вывел все что хотел и даже больше, жизнь омрачает только формат даты рождения,
понятно что надо вычесть из настоящей даты, дату рождения, но у самого функцию преобразования
написать не получается.
Может есть похожее решение?
На вкус и цвет - разный CSS
-
Sheer
- Former team member
- Сообщения: 12113
- Стаж: 19 лет 8 месяцев
- Откуда: Калининград не Кенигсберг
- Благодарил (а): 54 раза
- Поблагодарили: 2756 раз
Re: Возраст и user_from на все страницы
Код: Выделить всё
'AGE' => isodate_to_user_format($user->data['user_birthday']),
/* ---- */
function isodate_to_user_format($birth_date = 0)
{
global $user;
list($d,$m,$y) = explode('-', $birth_date);
$timp = explode(' ', date('d M Y', mktime(0, 0, 0, $m, $d, $y)));
$timp[1] = $user->lang['datetime'][$timp[1]];
return implode (' ', $timp);
}Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
-
ВладимирТ
- phpBB 2.0.4
- Сообщения: 421
- Стаж: 16 лет 4 месяца
- Откуда: Москва
- Благодарил (а): 52 раза
- Поблагодарили: 75 раз
Re: Возраст и user_from на все страницы
Огромное спасибо Sheer, а можно последний вопрос?
Как вычислить и вывести вместо даты рождения - возраст человека, типа 30 лет
Как вычислить и вывести вместо даты рождения - возраст человека, типа 30 лет
На вкус и цвет - разный CSS
-
Sheer
- Former team member
- Сообщения: 12113
- Стаж: 19 лет 8 месяцев
- Откуда: Калининград не Кенигсберг
- Благодарил (а): 54 раза
- Поблагодарили: 2756 раз
Re: Возраст и user_from на все страницы
Код: Выделить всё
function user_age()
{
global $user;
list($bday_day, $bday_month, $bday_year) = array_map('intval', explode('-', $user->data['user_birthday']));
if ($bday_year)
{
$now = phpbb_gmgetdate(time() + $user->timezone + $user->dst);
$diff = $now['mon'] - $bday_month;
if ($diff == 0)
{
$diff = ($now['mday'] - $bday_day < 0) ? 1 : 0;
}
else
{
$diff = ($diff < 0) ? 1 : 0;
}
$age = max(0, (int) ($now['year'] - $bday_year - $diff));
return $age;
}
return false;
}Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
-
ВладимирТ
- phpBB 2.0.4
- Сообщения: 421
- Стаж: 16 лет 4 месяца
- Откуда: Москва
- Благодарил (а): 52 раза
- Поблагодарили: 75 раз
Re: Возраст и user_from на все страницы
Вот последний штрих, после вывода возраста, напрашивалось написать следующее - 39 лет, 21 год или 3 года.
Вот решение в вдогонку выше приведенного, может кому пригодится :
Теперь у меня все по взрослому
, перед носом висит своя аватара, как меня зовут, сколько мне лет, из какого я города и страны, когда был последний раз - ДАБЫ НЕ ЗАБЫТЬ!!!
Вот решение в вдогонку выше приведенного, может кому пригодится :
Код: Выделить всё
'OP_AGE_YEAR' => $op_age_year,Код: Выделить всё
$op_age = user_age($user->data['user_birthday']);
$op_age_vg = substr($op_age, -1, 1);
if ($op_age_vg == "1") {
$op_age_year = " год,"; }
else {
if ($op_age_vg == "0") {
$op_age_year = " лет,"; }
else {
if ($op_age_vg < "5") {
$op_age_year = " года,"; }
else {
$op_age_year = " лет,"; }}} Теперь у меня все по взрослому
На вкус и цвет - разный CSS
-
ВладимирТ
- phpBB 2.0.4
- Сообщения: 421
- Стаж: 16 лет 4 месяца
- Откуда: Москва
- Благодарил (а): 52 раза
- Поблагодарили: 75 раз
Re: Возраст и user_from на все страницы
Назрел еще один вопрос.
Возможно ли выводить аватар любого пользователя рядом с его именем, на любой странице, то есть существует глобальная функция и переменная?
Возможно ли выводить аватар любого пользователя рядом с его именем, на любой странице, то есть существует глобальная функция и переменная?
На вкус и цвет - разный CSS
-
Sheer
- Former team member
- Сообщения: 12113
- Стаж: 19 лет 8 месяцев
- Откуда: Калининград не Кенигсберг
- Благодарил (а): 54 раза
- Поблагодарили: 2756 раз
Re: Возраст и user_from на все страницы
Код: Выделить всё
if (!function_exists('get_user_avatar'))
{
include($phpbb_root_path . 'includes/functions_display.' . $phpEx);
}
$template->assign_vars(array(
'USER_AVATAR' => get_user_avatar($user->data['user_avatar'], $user->data['user_avatar_type'], $user->data['user_avatar_width'], $user->data['user_avatar_height']),
));Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
-
ВладимирТ
- phpBB 2.0.4
- Сообщения: 421
- Стаж: 16 лет 4 месяца
- Откуда: Москва
- Благодарил (а): 52 раза
- Поблагодарили: 75 раз
Re: Возраст и user_from на все страницы
Спасибо, но это вроде, если я не ошибаюсь, вывод своего аватара.
Я имел виду, аватар других пользователей, есть куча разрозненных модов, типа аватар в список пользователь, кто в сети, кто создал тему и т.д., а хочется что то единое и ставить переменную где мне удобно, например день рождения.
Я имел виду, аватар других пользователей, есть куча разрозненных модов, типа аватар в список пользователь, кто в сети, кто создал тему и т.д., а хочется что то единое и ставить переменную где мне удобно, например день рождения.
На вкус и цвет - разный CSS
-
angst66
- phpBB 3.0.0 RC3
- Сообщения: 1587
- Стаж: 14 лет 9 месяцев
- Благодарил (а): 90 раз
- Поблагодарили: 165 раз
Re: Возраст и user_from на все страницы
ВладимирТ В этом моде ACP Announcement Centre (объявления) для phpBB3 функция вывода аватары в поздравлении на др, поковыряй.
-
Sheer
- Former team member
- Сообщения: 12113
- Стаж: 19 лет 8 месяцев
- Откуда: Калининград не Кенигсберг
- Благодарил (а): 54 раза
- Поблагодарили: 2756 раз
Re: Возраст и user_from на все страницы
Да в принципе аналогично, только сам понимаешь, для любого пользователя глобальных значений нет. Нужно сделать SQL-запрос и получить данные из таблицы
users по данному конкретному пользователю.
Код: Выделить всё
$sql = 'SELECT user_avatar, user_avatar_type, user_avatar_width, user_avatar_height
FROM ' . USERS_TABLE . '
WHERE user_id = ' . $uid . ''; // $uid - ид пользователя
$result = $db->sql_query($sql);
$row = $db->sql_fetchrow($result);
$db->sql_freeresult($result);
if (!function_exists('get_user_avatar'))
{
include($phpbb_root_path . 'includes/functions_display.' . $phpEx);
}
$template->assign_vars(array(
'USER_AVATAR' => get_user_avatar($row['user_avatar'], $row['user_avatar_type'], $row['user_avatar_width'], $row['user_avatar_height']),
));Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
-
Pazh
- Former team member
- Сообщения: 2317
- Стаж: 16 лет 11 месяцев
- Благодарил (а): 42 раза
- Поблагодарили: 506 раз
Re: Возраст и user_from на все страницы
примени к своему алгоритму возраст 11-14 лет и получишь неправильную формулировкуВладимирТ писал(а):Вот последний штрих, после вывода возраста, напрашивалось написать следующее - 39 лет, 21 год или 3 года.
Помощь в ЛС/email только за WM или ЮMoney

