VBsupport перешел с домена .ORG на родной .RU
Ура!
Пожалуйста, обновите свои закладки - VBsupport.ru
Блок РКН снят, форум доступен на всей территории России, включая новые терртории, без VPN
На форуме введена премодерация ВСЕХ новых пользователей
Почта с временных сервисов, типа mailinator.com, gawab.com и/или прочих, которые предоставляют временный почтовый ящик без регистрации и/или почтовый ящик для рассылки спама, отслеживается и блокируется, а так же заносится в спам-блок форума, аккаунты удаляются
Если вы хотите приобрести какой то скрипт/продукт/хак из каталогов перечисленных ниже: Каталог модулей/хаков
Ещё раз обращаем Ваше внимание: всё, что Вы скачиваете и устанавливаете на свой форум, Вы устанавливаете исключительно на свой страх и риск.
Сообщество vBSupport'а физически не в состоянии проверять все стили, хаки и нули, выкладываемые пользователями.
Помните: безопасность Вашего проекта - Ваша забота. Убедительная просьба: при обнаружении уязвимостей или сомнительных кодов обязательно отписывайтесь в теме хака/стиля
Спасибо за понимание
Сложный вопрос по кастомным полям Vbulletin, альбомам и CMPS сразу
0
Кратко - делаю фотофорум. После многих попыток оптимального (не только с точки зрения вебмастера и админа, а в первую очередь с точки зрения слабосмыслящих в этом деле юзеров) решил остановиться на альбомах. Не на галерее, а именно на альбомах.
После серии мучений был написан модуль вывода последних изображений на Vba CMPS - http://photo-continent.ru/
Там, в общем, наглядно видно, к чему стремлюсь.
Серия вопросов сразу:
Как вывести содержимое кастомных полей профиля не на странице профиля, а в другом месте, например, там же, http://photo-continent.ru/, в полях данных имя и фамилия автора фотоснимка (указываются в кастомных полях профиля, обязательны к заполнению)
В том числе эти же поля должны выводиться и в http://photo-continent.ru/picall.php - это хак, в альбомах, и в любом другом месте, где возникнет таковая необходимость.
Так что вопрос касается не конкретного хака, он более глобален... И кастомных полей может быть довольно много...
Как вывести содержимое кастомных полей профиля не на странице профиля, а в другом месте, например, там же, http://photo-continent.ru/, в полях данных имя и фамилия автора фотоснимка (указываются в кастомных полях профиля, обязательны к заполнению)
Quote:
Originally Posted by Gostemilov
В том числе эти же поля должны выводиться и в http://photo-continent.ru/picall.php - это хак, в альбомах, и в любом другом месте, где возникнет таковая необходимость.
Джойном из юзерфиелдс по ID юзверя.
@Gostemilov
Специалист
Join Date: Jun 2007
Location: Одинцово Московская область
Награды в конкурсах:
Posts: 610
Версия vB: 3.8.4
Reputation:
Professional 629
Репутация в разделе: 495
0
Quote:
Джойном из юзерфиелдс по ID юзверя.
- это-то я понял, через джойн как раз модуль для VBA и писал. Но это для отдельного модуля, который нигде и никогда больше не светится. А глобально, функцию там привернуть или что-то в этом роде?
@StenLi
На доске почёта Пожизненный блэк
Join Date: Aug 2008
Награды в конкурсах:
Posts: 2,729
Версия vB: 3.6.x
Reputation:
Expert 1991
Репутация в разделе: 742
1
Quote:
Originally Posted by Gostemilov
А глобально, функцию там привернуть или что-то в этом роде?
Зависит как раз-таки от того, где будет вывод, так как нам нужно зацепиться за ID конкретного пользователя, и по нему выводить field.
Т.е. примерно так: Определяемся с названием колонки, допустим userfield.field10500, затем пишем ее к выводимому после селекта.
Далее пишем:
PHP Code:
LEFT JOIN " . TABLE_PREFIX . "userfield AS userfield ON(userfield.userid = user.userid)
или
PHP Code:
LEFT JOIN " . TABLE_PREFIX . "usertextfield AS usertextfield ON(usertextfield.userid = user.userid)
Где user.userid - это наша зацепка, к примеру если выводим так:
PHP Code:
SELECT user.userid, reputation, username, usergroupid, birthday_search, email, parentemail,(options & " . $vbulletin->bf_misc_useroptions['coppauser'] . ") AS coppauser, homepage, icq, aim, yahoo, msn, skype, signature, usertitle, joindate, lastpost, posts, ipaddress, lastactivity, userfield.*, infractions, ipoints, warnings FROM " . TABLE_PREFIX . "user AS user LEFT JOIN " . TABLE_PREFIX . "userfield AS userfield ON(userfield.userid = user.userid) LEFT JOIN " . TABLE_PREFIX . "usertextfield AS usertextfield ON(usertextfield.userid = user.userid) WHERE $condition ORDER BY " . $db->escape_string($vbulletin->GPC['orderby']) . " " . $db->escape_string($vbulletin->GPC['direction']) . " LIMIT " . $vbulletin->GPC['limitstart'] . ", " . $vbulletin->GPC['limitnumber']
Если не то, значит я неверно понял суть задачи
@Gostemilov
Специалист
Join Date: Jun 2007
Location: Одинцово Московская область
Награды в конкурсах:
Posts: 610
Версия vB: 3.8.4
Reputation:
Professional 629
Репутация в разделе: 495
0
PHP Code:
<?php
// set how many to display
$tot = '4';
$orderby = "dateline";
$rows = 6;
for ($i=1; $i<$rows; $i++) {
$start = ($i*4)-4;
$lpictures = $db->query_read("
SELECT albumpicture.*, album.*, user.username, user.usergroupid, picture.caption,picture.thumbnail_dateline,
IF(displaygroupid=0, user.usergroupid, displaygroupid) AS displaygroupid
FROM " . TABLE_PREFIX . "albumpicture AS albumpicture
LEFT JOIN " . TABLE_PREFIX . "album AS album ON(album.albumid = albumpicture.albumid)
LEFT JOIN " . TABLE_PREFIX . "user AS user ON(user.userid = album.userid)
LEFT JOIN " . TABLE_PREFIX . "picture AS picture ON(albumpicture.pictureid = picture.pictureid)
WHERE album.state = 'public'
ORDER BY $orderby DESC LIMIT $start, $tot ");
$cols = $db->num_rows($lpictures);
Вопрос в том, что у меня моск выкипит пока я разберусь, к какому запросу где когда джойнить. :(
@StenLi
На доске почёта Пожизненный блэк
Join Date: Aug 2008
Награды в конкурсах:
Posts: 2,729
Версия vB: 3.6.x
Reputation:
Expert 1991
Репутация в разделе: 742
0
Quote:
Originally Posted by Gostemilov
Вопрос в том, что у меня моск выкипит пока я разберусь, к какому запросу где когда джойнить. :(
К этому и джойнь.
PS. Немного не понял, зачем тебе еще и цикл фор, если можно лимитом ограничиться)
@Gostemilov
Специалист
Join Date: Jun 2007
Location: Одинцово Московская область
Награды в конкурсах:
Posts: 610
Версия vB: 3.8.4
Reputation:
Professional 629
Репутация в разделе: 495
0
Цикл и фор понадобились для того, чтобы выводить картинки в несколько рядов. По-другому, увы, никак.
А насчет джойна - ладно, вот пример попроще и заодно понагляднее
При регистрации юзер обязан ввести фамилию и имя. Я хочу, чтобы на форуме он отображался по имени и фамилии, а ник ииспользовался бы ТОЛЬКО в качестве логина. Какова задачка?
kerk
k0t
Join Date: May 2005
Location: localhost
Posts: 28,712
Версия vB: 3.8.x
Пол:
Reputation:
Гуру 20257
Репутация в разделе: 8432
0
Quote:
Originally Posted by Gostemilov
По-другому, увы, никак.
можно использовать UNION, если я правильно понимаю суть темы
а можно и без него, в файловике то контент выводится в несколько рядов на многих страницах
как пример: http://vbsupport.ru/forum/krfilesman...nfiles&u=29727
@StenLi
На доске почёта Пожизненный блэк
Join Date: Aug 2008
Награды в конкурсах:
Posts: 2,729
Версия vB: 3.6.x
Reputation:
Expert 1991
Репутация в разделе: 742
0
Quote:
Originally Posted by kerk
можно использовать UNION, если я правильно понимаю суть темы
а можно и без него, в файловике то контент выводится в несколько рядов на многих страницах
как пример: http://vbsupport.ru/forum/krfilesma...nfiles&u=29727