выборка из массива

 
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 1074
зря удалил вчерашнюю тему, с вопросом про запрос..думал что справился :))

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

запрос исправил, в шаблон кинул. все работает. но выводит целиком данные которые содержаться в поле formsdata. а мне надо выбрать только те данные которые содержит форма под id 1. как выдернуть из массива значение ?

пытаюсь вот так вот

Код PHP:
  1. $formsdata = $inCore->yamlToArray($user['formsdata']);
  2. $hob = $formsdata[$field['1']];
$hob далее уходит в шаблон и не выводит ничего.

хотя через print_r ($user['formsdata']); данные из массива показывает, и напрямую в шаблон отдает.
ошибка где-то здесь...$formsdata[$field['1']]; я не правильно выдергиваю ?
Редактировалось: 1 раз (Последний: 20 сентября 2012 в 10:21)
я cделал тиц 20 за 300р в месяц / 15$ в день ничего не делая / почему контекст лучше тизеров
Посетитель
small user social cms
МедальКубок зрительских симпатий
Сообщений: 555
что такое $field? - в эту переменную что-то запихивается?

кидайте результат
print_r ($user['formsdata']); - что она выводит? - тогда сразу можно будет сказать как надо написать..
Редактировалось: 1 раз (Последний: 20 сентября 2012 в 10:25)
оптимизирую помаленьку
Реклама
cms
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 1074
выводит

--- 1: Поле1 2: Поле2 3: Поле3

тобишь все что как в таблице содержится. в таблице вот так

---
1: Поле1
2: Поле2
3: Поле3

$field['1'] - я так думал что получу значение с id 1 - это 1: Поле1 . переменную не объявлял нигде
Редактировалось: 1 раз (Последний: 20 сентября 2012 в 10:35)
я cделал тиц 20 за 300р в месяц / 15$ в день ничего не делая / почему контекст лучше тизеров
Посетитель
small user social cms
МедальКубок зрительских симпатий
Сообщений: 555
picaboo:

выводит

--- 1: Поле1 2: Поле2 3: Поле3

тобишь все что как в таблице содержится. в таблице вот так

---
1: Поле1
2: Поле2
3: Поле3

$field['1'] - я так думал что получу значение с id 1 - это 1: Поле1 . переменную не объявлял нигде

$field - значек доллара означает, что это переменная и если хотите из нее что-то вытащить, то перед этим надо туда "что-то" положить) ну это как ящик.. а в вашем ящике ничего нет и php даже не знает о его существовании

Код PHP:
  1. $formsdata[1];
- это должно показать первый элемент массива, если я правильно понял
Код PHP:
  1. $formsdata[1][1];
или так

Сейчас нет времени сильно вникать, с работы пишу) попробуйте

или $formsdata[0][0];
Редактировалось: 1 раз (Последний: 20 сентября 2012 в 11:09)
оптимизирую помаленьку
InstantCMS Team
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 4380
что показывает print_r ($user['formsdata']) ? там массив?

Если массив, то зачем yamlToArray делается?

Если не так, то print_r($formsdata); что говорит?

SJen:
$formsdata[1];
покажет второй элемент массива
Редактировалось: 2 раз (Последний: 20 сентября 2012 в 11:18)
Видео каталог для InstantCMS | Аудио каталог для InstantCMS | Мы Вконтакте | Предложение для спонсоров
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 1074
Fuze:
Если массив, то зачем yamlToArray делается?
в движке, в паре мест всего formsdata, обрабатывается и именно так подсмотрел оттуда.

print_r выводит --- 1: Поле1 2: Поле2 3: Поле3
я cделал тиц 20 за 300р в месяц / 15$ в день ничего не делая / почему контекст лучше тизеров
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 1074
хм... если выкинуть весь хлам что я понаписал и выводить в шаблон напрямую

$usr['hobby'] = $usr['formsdata']['5']; то показывает 5 символ ...осталось всего чуть чуть :)) надо вывести с 7 по...чорт..мне нужен пхп для чайников, пойду поищу...:(
я cделал тиц 20 за 300р в месяц / 15$ в день ничего не делая / почему контекст лучше тизеров
InstantCMS Team
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 4380
picaboo:
print_r выводит --- 1: Поле1 2: Поле2 3: Поле3
значит там yaml и
$formsdata = $inCore->yamlToArray($user['formsdata']);
нужно делать.
print_r($formsdata); что говорит?
Редактировалось: 1 раз (Последний: 20 сентября 2012 в 11:42)
Видео каталог для InstantCMS | Аудио каталог для InstantCMS | Мы Вконтакте | Предложение для спонсоров
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 1074
Fuze:
print_r($formsdata); что говорит?
Array ( )
Редактировалось: 4 раз (Последний: 20 сентября 2012 в 16:32)
я cделал тиц 20 за 300р в месяц / 15$ в день ничего не делая / почему контекст лучше тизеров
InstantCMS Team
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 4380
picaboo, перефразируйте ваш вопрос и что в файлике нужно смотреть?
Видео каталог для InstantCMS | Аудио каталог для InstantCMS | Мы Вконтакте | Предложение для спонсоров
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 1074
строки 340-360

вопрос: как вывести поле из компонента форм под айди 1
Редактировалось: 1 раз (Последний: 20 сентября 2012 в 16:33)
я cделал тиц 20 за 300р в месяц / 15$ в день ничего не делая / почему контекст лучше тизеров
InstantCMS Team
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 4380
picaboo:
данное поле в компоненте форм идет под айди 1
эта форма, где поле, не привязана к профилю?
Видео каталог для InstantCMS | Аудио каталог для InstantCMS | Мы Вконтакте | Предложение для спонсоров
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 1074
привязана и заполняется пользователем в профиле
я cделал тиц 20 за 300р в месяц / 15$ в день ничего не делая / почему контекст лучше тизеров
Модератор
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 1675
выкинуть 339 строка
Код PHP:
  1. $formsdata = $inCore->yamlToArray($user['formsdata']);
со строки 351
Код PHP:
  1.  
  2. if ($is_users){
  3. while($usr = $inDB->fetch_assoc($result)){
  4. $rownum++;
  5. $usr['avatar'] = usrLink(usrImageNOdb($usr['id'], 'small', $usr['imageurl'], $usr['is_deleted']), $usr['login'], $menuid);
  6. $usr['nickname'] = cmsUser::getProfileLink($usr['login'], $usr['nickname']);
  7. $usr['flogdate'] = $inCore->dateFormat($usr['flogdate'], true, true);
  8. $usr['status'] = usrStatusList($usr['id'], $usr['flogdate'], false, $usr['gender']);
  9. $usr['num'] = $rownum + ($page-1)*$perpage;
  10. $formsdata = $inCore->yamlToArray($usr['formsdata']);
  11. $usr['hobby'] = $formsdata[1]; //значение первого поля
  12.  
или так…
Редактировалось: 1 раз (Последний: 20 сентября 2012 в 12:50)
«Главное “настрой”! И всё настроиться…» © ) Их знают все! А вы?
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 1074
Йооо!!

заработало!!

надо было не [0][0] указывать, а [1]


Всем спасибо за помощь :)
Редактировалось: 1 раз (Последний: 20 сентября 2012 в 12:48)
я cделал тиц 20 за 300р в месяц / 15$ в день ничего не делая / почему контекст лучше тизеров
В начало страницы
Предыдущая темаСледующая тема Перейти на форум:
Быстрый ответ
Чтобы писать на форуме, зарегистрируйтесь или авторизуйтесь.