Как программно определить uid вошедшего пользователя, т.е. если админ, то одно, если юзер, то другое

Прислано: Defendson

ср, 07/12/2011 - 12:46

Доброго времени суток!
Приступил к написанию модуля, на подобие диалога с администратором.
Необходимо программно определить, какой пользователь находится на сайте, и если это админ, то делаю один код, если пользователь, то другой.
Собственно
если сессия пользователя -> достаю id пользователя и пишу код для юзера
иначе если сессия администратора -> достаю id (1) администратора и пишу код для администратора

Что заменяет в друпале $_SESSION['user'] == admin ну и тд.?

изменить uid

Прислано: xsandr.k

ср, 08/06/2011 - 06:30

Добрый день.
Мне необходимо при регистрации нового пользователя самостоятельно назначить ему uid. Как такое сделать?
Или как к объекту $user прикрутить ещё одно поле?

Пользователь написавший материал

Прислано: pashca

вт, 08/02/2011 - 14:33

Добрый вечер!

Возникла следующая проблема.

Есть Тип содержимого Машины. Через админку добавил пару машин. Настроил блок вывода Мои машины. Настроил его. Вывод показывается замечательно. Подскажите, как можно дать возможность зарегистрированным пользователям добавлять машины самим. И второй вопрос как затем можно настроить Вид Мои машины, так чтобы показывались не все Машины заведенные на сайте. А только те которые создал этот пользователь. Наверно это нужно делать через Фильтр, но там Материал: Пользователь создавший материал надо указывать имя пользователя, а как сделать чтобы в это поле подставлялось имя текущего пользователя. Или может каким-то другим способом надо делать такую выборку

Как думаете, можно ли переделать тип поля int(10) NID в UUID?

Прислано: chel

ср, 10/11/2010 - 06:20

Дано: много сайтов разных фирм, общая структура типа материала фирмы (node_firm) и сотрудники Node_profile (со своими связями друг с другом и таксономией)

Задача: объеденить все фирмы и сотрудников в один отдельный сайт (чтобы связи остались теже). По мере изменений добавлений на друхих сайтах, этот сайт должен тоже обновляться.

Вижу следующие решения:
1) Мультисайтинг (не подходит - каждая фирма не должна иметь доступ к чужому сайту, все хранятся на разных хостингах)
2) RSS-API feeв (минус в том что надо будет как-то обрабатывать учитывать связи на новом сайте)
3) использовать в MySQL базы Друпала - UUID вместо int (для nid - идентификатора нод)
нашел интересный модуль uuid http://drupal.org/project/uuid (версия beta/dev) - тоже не то, он создает таблицу uuid_node
там всего два значения nid и новое значение uuid - зачем, непонятно
как быть?

Узнать номер следующего пользователя

Прислано: GeneralLee

сб, 02/10/2010 - 15:39

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

В таблице MySQL есть столбцы
iid(serial) - invite id (номер приглашения)
sid(int) - source id (ригласивший пользователь)
did(int) - destination id(приглашённый пользователь)

Нужно заполнить sid и did. sid берём из формы. did я предполагал взять из global $user, но так, как регистрация не окончена во время отправки формы то $user->uid содержит 0.
Как узнать номер нового зарегистрированного пользователя во время отправки формы регистрации?
Верно ли взять самый большой uid в таблице users и прибавить единицу?

Вывод вместо логина полного имени пользователя на главной?

Прислано: Hitmrrr@drupal.org

чт, 12/08/2010 - 03:38

Другие статьи по теме:

Всем привет, перечитал все возможные инструкции, рекомендации итд как вывести вместо логина имя из текстового поля profile_cn модуля Profile.. в основном пишут, что нужно вставить код который я привел ниже в template.php темы. Но вместо логина так и остался логин. Подскажите, что нужно подправить?

<?phpfunction phptemplate_username($object) {

  if (
$object->uid && $object->name) {
    
// Shorten the name when it is too long or it will break many tables.
    
if (drupal_strlen($object->name) > 40) {
      
$name drupal_substr($object->name015) .'...';
    }
    else {
      
$name $object->name;
    }
    
$profile user_load(array('uid' => $object->uid));
    if (
$profile->profile_cn) {
      if (
drupal_strlen($profile->profile_cn) > 40) {
        
$name drupal_substr($profile->profile_cn015) .'...';
      }
      else {
        
$name $profile->profile_cn;
      }
    }

    if (
user_access('access user profiles')) {
      
$output l($name'user/'$object->uid, array('title' => t('View user profile.')));
    }
    else {
      
$output check_plain($name);
    }
  }
  else if (
$object->name) {
    
// Sometimes modules display content composed by people who are
    // not registered members of the site (e.g. mailing list or news
    // aggregator modules). This clause enables modules to display
    // the true author of the content.
    
if ($object->homepage) {
      
$output l($object->name$object->homepage);
    }
    else {
      
$output check_plain($object->name);
    }
?>

РЕШЕНО | Как изменить порядок нумерации UID пользователей?

Прислано: Modjahed

чт, 26/11/2009 - 08:32

Другие статьи по теме:

Новые пользователи создаются с порядковым номером 341, 342, 343 и т.д. Когда я удаляю всех пользователей, то порядок Uid продолжается. То есть удалил всех, создаю нового пользователя и он уже идет с номером 344, 345, 346.

Что нужно сделать, чтобы порядок новых пользователей начинался с 2, 3, 4 и т.д Возможно в какой - то таблице нужно что - то удалить или в файле прописать?

На форуме нашел лишь описание для Drupal 5, в Drupal 6 в БД, такой таблицы нет вовсе.

Определение активного пользоваться в контенте страницы (page)

Прислано: Konstantin_M

ср, 19/08/2009 - 12:39

Подскажите, я хочу определить активного юзера внутри контента страницы, там переменных
<?php$user->name?> и т.д. нет.

Цели у меня простые, и я просто инклудом помещаю свой php скрипт непосредственно в контент -> page и делаю всё что мне нужно, но мне понадобился uid текущего (активного в данный момен) пользователя из таблицы users. И вообще как я могу юзать константы и глобальные переменные внутри контента, как системные, такие как из таблицы users, так и переменные шаблона page.tpl.php (там где можно использовать PHP в качестве контента)

Подскажите, пожалуйста, КАК определить id собственного меню?

Прислано: ValBangMan

ср, 24/12/2008 - 08:02

Другие статьи по теме:

1. В переопределенных функциях function phptemplate_menu_tree($tree) и phptemplate_menu_item($link, $has_children, $menu = '', $in_active_trail = FALSE, $extra_class = NULL) необходимо определить, что к ним обращается ИМЕННО мое меню с системным именем main-menu и ТОЛЬКО для него сделать вывод такой, как нужно, а для остальных оставить по-умолчанию, потому что если проверку не делать, то то, как я переопределяю вывод меню, применяется КО ВСЕМ МЕНЮ!
2. Как в файл block.tpl.php передать информацию, что ТОЛЬКО для региона с именем $main_menu должно применяться то переопределение, которое описано, потому что как и в случае с меню (описано выше) переопределение применяется к выводу ВСЕХ регионов.

Насколько я понимаю, у каждого элемента должен быть свой id, так вот как он обозначается и как им пользоваться? Заранее спасибо!

Как получить uid авторизованного пользователя?

Прислано: sergej-serov

пн, 02/06/2008 - 08:40

Другие статьи по теме:

Доброго дня!

кто-нибудь может подсказать, как узнать ID пользователя?
во views добавил php код, в котором используется uid пользователя:

<?php
$db mysql_pconnect("localhost:3306" "****""****");
if (!
$db)
{
echo 
"Error: Could not connect to database. Please try again later.";
exit;
}
mysql_select_db("test5");
$query "
SELECT SUM(c.field_balli_value)    
FROM content_type_progect as c, node as n
WHERE
c.nid = n.nid AND
n.uid = УНИКАЛЬНОЕ_ИМЯ_ПОЛЬЗОВАТЕЛЯ
"
;
$result mysql_query($query);
echo 
mysql_result($result,0);
?>

собственно, вместо УНИКАЛЬНОЕ_ИМЯ_ПОЛЬЗОВАТЕЛЯ надо как-то добавить апишную функцию, что бы при выполнении кода подставлялся UID пользователя....

Отсутствует $user->uid!!!

Прислано: sashka

сб, 28/07/2007 - 20:30

Залогинился админом... а $user->uid отсутствует.
var_dump($user->uid);
Выводит NULL
Это нормально? :) и как лечить?

Как заменить /user/uid на /user/nick

Прислано: KCEOH

вт, 01/05/2007 - 19:40

Как сделано тут, на друпал.ру

RSS-материал

Новое на сайте