LiveInternetMail.ru
Форум русской поддержки Joomla!® CMS
27.05.2012, 17:13:43 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 1.7 FAQ Joomla 1.5 FAQ Joomla 1.0 FAQ Правила форума Новости Joomla Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор Тема: Изменение формы регистрации нового пользователя  (Прочитано 517 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Woland66
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 103


« : 03.02.2012, 13:10:52 »

Для регистрации новых пользователей у Joomla есть родная форма. Количество полей формы ограничено именем, логином, паролем, повтором пароля и емэйлом. Хочу добавить в форму поля для ввода номера телефона, адреса и т.д. Что проще: добавить свои поля в форму Joomla, а потом рыться в её кодах, чтобы данные вносились в БД или создать свою форму? А может есть уже готовый компонент?
Записан
Woland66
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 103


« Ответ #1 : 03.02.2012, 13:56:19 »

Посмотрел эту тему: http://www.komtet.ru/lib/cms/joomla/dopolnitelnye-polya-polzovatelya-v-joomla В принципе, всё просто. Меня смущает вот что. Я посмотрел в таблицы MySQL Joomla, там нашёл таблицу #_users. Из содержимого таблицы понятно, что данные из заполненной при регистрации формы записываются в эту таблицу. Я добавил в форму дополнительные поля, только им некуда записываться, т.к. под дополнительные поля формы не созданы дополнительные поля таблицы. Создать дополнительные поля в таблице не сложно, я их создал, но туда ничего не записалось. Есть идеи?
Записан
Woland66
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 103


« Ответ #2 : 03.02.2012, 14:04:57 »

Зря я создал два поля в таблицу SQL, оказалось данные из дополнительных полей формы записываются в поле params таблицы #_users. Подскажите, как составить запрос к БД, чтобы получить значения из поля params таблицы #_users? Не точно выразился. В поле params таблицы #_users есть разные данные, в т. ч. данные из дополнительных полей формы регистрации пользователей. Так мне нужны данные только из дополнительных полей формы. Как их изъять? Может, надо в запросе к БД применить тоже params? Данные о пользователе я получаю так: $user = JFactory::getUser(); Получаю массив, из которого могу получить данные поля params: $user->params. А вот из этого params как извлечь часть данных (номер телефона, адрес и т.д., а другие данные не извлекать)?
« Последнее редактирование: 03.02.2012, 15:40:45 от Woland66 » Записан
SmokerMan
Профи
********

Репутация: +521/-20
Offline Offline

Пол: Мужской
Сообщений: 5195



« Ответ #3 : 03.02.2012, 15:53:06 »

Получаю массив, из которого могу получить данные поля params: $user->params.
ну и в чем проблема? не можете разбить массив?
в 1.5 есть класс JParameter который облегчает это дело.
Записан
Woland66
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 103


« Ответ #4 : 03.02.2012, 18:04:25 »

ну и в чем проблема? не можете разбить массив?
Не могу, т.к. новичок в программировании. Сейчас у меня всё выглядит так: $user->params[icq] (это я пытаюсь номер аськи выдернуть, т.к. в форме через params передаётся значение в таблицу #_users), но делаю неправильно, т.к. у меня возвращаются все данные из поля params таблицы #_users.
ну и в чем проблема? не можете разбить массив?
в 1.5 есть класс JParameter который облегчает это дело.
Ага, сейчас посмотрю.
По предложенной ссылке посмотрел, там всё на английском, не понятно. Посмотрел на русских форумах, нашёл подсказку, попробовал - получилось. Правда, у меня емэйл пропал. Сейчас поищу в чём дело.
Всё, разобрался, всё получилось. SmokerMan, большое спасибо. Тема закрыта.
« Последнее редактирование: 03.02.2012, 20:14:21 от Woland66 » Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Рейтинг@Mail.ru Rambler Top100 Powered by SMF 1.1.16 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet