Дополнительные поля при регистрации.

ЕСТЬ РЕШЕНИЕ ЗАКРЫТО
#1 31 мая 2012 в 12:04
Добрый день.
Нужно сделать дополнительные поля при регистрации помогите пожалуйста.

Сейчас так:
Логин:
Никнейм:
Пароль:
Повторите пароль:
E-Mail: (не публикуется)
ICQ:
Дата рождения:

Нужно вставить между эмайлом например "размер ноги" "Рост" и что-бы в профили они тоже публиковались. Как это реализовать?
#2 31 мая 2012 в 15:24
В конструкторе форм настроить форму и привязать к профилю?
#3 31 мая 2012 в 16:29
При самой регистрации что бы пользователи заполняли эти поля или при редактировании профиля?
#4 31 мая 2012 в 16:38
При самой регистрации, а после чего что-бы эти поля отобразились в профиле
#5 31 мая 2012 в 17:33
Писал инструкцию одному человеку когда ещё только познакомился с инстантом… тут добавление выбора пола в регистрацию (м\ж\пара) и несколько новых полей, редактирование этих полей в настройках профиля и вывод данных в профиле.
1) открываем:
components/users/frontend.php


найти:
  1. $showicq = $inCore->request('showicq', 'int');
ниже вставить:


  1. $gender = $inCore->request('gender', 'str', '');
  2. $malerost = $inCore->request('malerost', 'str');
  3. $maleves = $inCore->request('maleves', 'str');
  4. $malesize = $inCore->request('malesize', 'str');
  5. $famalerost = $inCore->request('famalerost', 'str');
  6. $famaleves = $inCore->request('famaleves', 'str');
  7. $famalesize = $inCore->request('famalesize', 'str');

находим:
  1. $sql = "UPDATE cms_users
  2. SET birthdate='$birthdate',
  3. email='$email',
  4. icq='$icq',
  5. nickname='$nickname'
  6. WHERE id = $id";
ЗАМЕНЯЕМ на:

  1. $sql = "UPDATE cms_users
  2. SET birthdate='$birthdate',
  3. email='$email',
  4. icq='$icq',
  5. malerost='$malerost',
  6. maleves='$maleves',
  7. malesize='$malesize',
  8. famalerost='$famalerost',
  9. famaleves='$famaleves',
  10. famalesize='$famalesize',
  11. nickname='$nickname'
  12. WHERE id = $id";

2) languages/ru/components/users.php
до :
  1. ?>
вставить:
  1. $_LANG['NUMBER_MALEROST'] ='Рост [М]';
  2. $_LANG['NUMBER_MALEVES'] ='Вес [М]';
  3. $_LANG['NUMBER_MALESIZE'] ='Размер [М]';
  4. $_LANG['NUMBER_FAMALEROST'] ='Рост [Ж]';
  5. $_LANG['NUMBER_FAMALEVES'] ='Вес [Ж]';
  6. $_LANG['NUMBER_FAMALESIZE'] ='Размер [Ж]';
3) components/users/model.php
находим:
  1. $sql = "SELECT
  2. u.id as id,
  3. u.login,
  4. u.nickname,
  5. u.email,
  6. u.icq,
Заменяем на:
  1. $sql = "SELECT
  2. u.id as id,
  3. u.login,
  4. u.nickname,
  5. u.email,
  6. u.icq,
  7. u.malerost,
  8. u.maleves,
  9. u.malesize,
4) откроем:
components/registration/frontend.php

найдём:
  1. $sql = "INSERT INTO cms_users (group_id, login, nickname, password, email, icq, regdate, logdate, birthdate, is_locked, is_logged_once, invited_by)
  2. VALUES ('$group_id', '$login', '$nickname', '$pass', '$email', '$icq', NOW(), NOW(), '$birthdate', '$is_locked', 0, '{$invited_by}')";
ЗАМЕНИМ на:

  1. $sql = "INSERT INTO cms_users (group_id, login, nickname, password, email, icq, malerost, maleves, malesize, regdate, logdate, birthdate, is_locked, is_logged_once, invited_by)
  2. VALUES ('$group_id', '$login', '$nickname', '$pass', '$email', '$icq', '$malerost', '$maleves', '$malesize', NOW(), NOW(), '$birthdate', '$is_locked', 0, '{$invited_by}')";
Найдём:
  1. } else {
  2. $icq = '';
  3. }
Ниже вставим

  1. $malerost = $inCore->request('malerost', 'str');
  2. $maleves = $inCore->request('maleves', 'str');
  3. $malesize = $inCore->request('malesize', 'str');
  4. $famalerost = $inCore->request('famalerost', 'str');
  5. $famaleves = $inCore->request('famaleves', 'str');
  6. $famalesize = $inCore->request('famalesize', 'str');
  7.  

найдём:

  1. $user_array = array(
  2. 'login'=>$login,
  3. 'nickname'=>$nickname,
  4. 'email'=>$email,
  5. 'icq'=>$icq,
  6. 'birthdate'=>$birthdate,
  7. 'is_locked'=>$is_locked
  8. );
ЗАМЕНИМ на:
  1. $user_array = array(
  2. 'login'=>$login,
  3. 'nickname'=>$nickname,
  4. 'email'=>$email,
  5. 'icq'=>$icq,
  6. 'malerost'=>$malerost,
  7. 'maleves'=>$maleves,
  8. 'malesize'=>$malesize,
  9. 'birthdate'=>$birthdate,
  10. 'is_locked'=>$is_locked
  11. );


5) templates/ваш шаблон/components/com_users_profile.tpl

Найдём:
  1. <div class="value">{$usr.birthdate}</div>
  2. </div>
  3. {/if}
Ниже вставим:
  1. {if $usr.malerost}
  2. <div class="field">
  3. <div class="title">{$LANG.NUMBER_USROST}:</div>
  4. <div class="value">{$usr.malerost}</div>
  5. </div>
  6. {/if}
  7. {if $usr.maleves}
  8. <div class="field">
  9. <div class="title">{$LANG.NUMBER_USVES}:</div>
  10. <div class="value">{$usr.maleves}</div>
  11. </div>
  12. {/if}
  13. {if $usr.malesize}
  14. <div class="field">
  15. <div class="title">{$LANG.NUMBER_USSIZE}:</div>
  16. <div class="value">{$usr.malesize}</div>
  17. </div>
  18. {/if}
6) templates/ваш шаблон/components/com_users_edit_profile.tpl

Найдём:
  1. <tr>
  2. <td valign="top"><strong>{$LANG.BIRTH}:</strong> </td>
  3. <td valign="top">
  4. {$dateform}
  5. </td>
  6. </tr>
Ниже вставим:
  1. <tr>
  2. <td valign="top"><strong>{$LANG.NUMBER_USROST} :</strong></td>
  3. <td valign="top"><input name="malerost" class="text-input" type="text" id="malerost" style="width:300px" value="{$usr.malerost}"/></td>
  4. </tr>
  5. <tr>
  6. <td valign="top"><strong>{$LANG.NUMBER_USVES} :</strong></td>
  7. <td valign="top"><input name="maleves" class="text-input" type="text" id="maleves" style="width:300px" value="{$usr.maleves}"/></td>
  8. </tr>
  9. <tr>
  10. <td valign="top"><strong>{$LANG.NUMBER_USSIZE} :</strong></td>
  11. <td valign="top"><input name="malesize" class="text-input" type="text" id="malesize" style="width:300px" value="{$usr.malesize}"/></td>
  12. </tr>

7) templates/ваш шаблон/components/com_registration.tpl
После:
  1. <input name="email" type="text" class="text-input" size="30" value="{$email}"/>
  2. <span class="regstar">*</span>
  3. </td>
  4. </tr>
Вставим:
  1. <tr>
  2. <td valign="top"><strong>Пол:</strong></td>
  3. <td valign="top">
  4. <select name="gender" id="gender" style="width:200px">
  5. <option value="m" {if $gender=='m'} selected {/if}>Мужской</option>
  6. <option value="f" {if $gender=='f'} selected {/if}>Женский</option>
  7. <option value="p" {if $gender=='p'} selected {/if}>Пара</option>
  8. </select>
  9. <span class="regstar">*</span>
  10. </td>
  11. </tr>
  12. <tr>
  13. <td valign="top" class=""><strong>Рост:</strong></td>
  14. <td valign="top" class="">
  15. <input name="malerost" type="text" class="text-input" id
#6 1 июня 2012 в 15:56
Спасибо большое! Это то что мне нужно было! Всё чётко работает! Ещё раз спасибо!
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.