Калькуляторы и формы для сайтов
0 Пользователей и 1 Гость просматривают эту тему.
  • 1 Ответов
  • 644 Просмотров
*

MrAlexSid

  • Осваиваюсь на форуме
  • 46
  • 0
Есть форма заявки на обучение. Зарегистрированные пользователи уже имеют некоторые данные на сайте (Имя, Email, Телефон и т. п.).
Как подставить значения полей CommunityBuilder (или хотя бы пользователей Joomla) в форму ChronoForms 5.
Данные не обязательно должны быть видны в форме. Главное, чтобы они приходили на почту.
На форуме нарыл такое:
Код
 $cbUser = & CBuser::getInstance( $userId );
 if( ! $cbUser ) {
  $cbUser =&CBuser::getInstance( null );
 }
 $user=$cbUser->getUserData();
 if ( ! $user ) {return;}
 ЗНАЧЕНИЕ_ПОЛЯ = $user->ИМЯ_ПОЛЯ;
и
Код
  global $database;
  $sql = "SELECT (ИМЯ_ПОЛЯ) FROM #__comprofiler WHERE id= {$userId}";
  $database->setQuery( $sql );
  ЗНАЧЕНИЕ = $database->loadResult();
Я в этом плохо разбираюсь, но как понял, это получение значений из базы данных CB. Возможно нужен ещё где нибудь, какой нибудь код.
Собственно, что и куда нужно вставлять? На примере одного поля, если можно поподробнее. Если знаете, где такой вопрос описан, дайте пожалуйста ссылку.
Заранее спасибо!
*

MrAlexSid

  • Осваиваюсь на форуме
  • 46
  • 0
С CommunityBuilder не разобрался, но удалось вытащить данные из #__users
Я в форму добавил Пользовательский код (Custom Code)
Код
<?php
$user =& JFactory::getUser();
$name = '';
$email = '';
$readonly = '';
if ( $user->id > 0 ) {
  $name = $user->name;
  $email = $user->email;
  $readonly = "readonly='readonly'";
}
?>

<div class="form-group gcore-form-row" id="name_container_div" style="">
  <label class="control-label gcore-label-left required_label" for="name">Ф.И.О.:</label>
  <input class="form-control A" id="name" maxlength="150" size="30" class=""
    title="" value=" <?php echo $name; ?> " name="name"
    type="text" <?php echo $readonly; ?> />
  <div class="clear"></div>
  <div id="error-message-name"></div>
</div>

<div class="form-group gcore-form-row" id="email_container_div" style="">
  <label class="control-label gcore-label-left required_label" for="email">Email:</label>
  <input class="form-control A" id="email" maxlength="150" size="30" class=""
    title="" value=" <?php echo $email; ?> " name="email"
    type="text" <?php echo $readonly; ?> />
  <div class="clear"></div>
  <div id="error-message-email"></div>
</div>
Код <?php echo $readonly; ?> делает поле input доступным только для чтения. Уберите, чтобы разрешить редактировать.
Если пользователь не авторизован, будут показаны обычные текстовые поля для заполнения.
Если хотите скрыть в форме Ф.И.О. и (или) Email, добавьте в стили блоков style="display: none;"

Соответственно в почте нужно добавить строчки:
Код
<table>
<tr><td>Ф.И.О.:</td><td>{name}</td></tr>
<tr><td>Эл. почта:</td><td>{email}</td></tr>
</table>

Источник: http://www.chronoengine.com/faqs/58-cfv4/cfv4-elements-and-html/3119-how-can-i-ask-new-users-for-information-and-not-ask-logged-in-users.html
« Последнее редактирование: 27.10.2015, 17:31:59 от MrAlexSid »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Предел для добавления полей формы

Автор krigan

Ответов: 2
Просмотров: 411
Последний ответ 19.09.2017, 22:53:48
от Heartflight
Странное поведение ChronoForms 5 на J2.5

Автор ORTODOX

Ответов: 0
Просмотров: 343
Последний ответ 20.07.2017, 15:56:49
от ORTODOX
Прикрепить файл в ChronoForms 5

Автор tsimba

Ответов: 21
Просмотров: 5732
Последний ответ 14.07.2017, 12:18:52
от denverkurt
ChronoForms textarea box size на шаблоне yootheme

Автор tao2en

Ответов: 1
Просмотров: 475
Последний ответ 11.07.2017, 00:18:38
от Sonate
Где меняется e-mail полей from и to в ChronoForms v6?

Автор Igoritaly

Ответов: 4
Просмотров: 188
Последний ответ 03.07.2017, 08:52:49
от vipiusss