Перейти к публикации

Дополнительные поля


Рекомендованные сообщения

А в каком файлике настраивается дизайн дополнительных полей? Ну то ест ья вставил в шаблоне {xfields}, а где редактируется само содержимое ,которое выводится данным тэгом?

Ничего не понимаю( Нашел файл upload\engine\inc\xfields.php и как я понял настраивается в нем... Попытался и ничего не получилось((

Как я понял за вывод отвечает вот эта часть за дизайн:

        $output .= <<<HTML

<tr id="$holderid">

<td class=addnews colspan="2">$value[1]:<br />[if-optional]({$lang['xf_not_notig']})[/if-optional]</td>

<td class=xfields colspan="2"><!--panel--><textarea name="xfield[$fieldname]" id="xf_$fieldname" {$params}>$fieldvalue</textarea></td></tr>

HTML;

      } elseif ($value[3] == "text") {

        $output .= <<<HTML

<tr id="$holderid">

<td class=addnews colspan="2">$value[1]:</td>

<td class=xfields colspan="2"><input type="text" name="xfield[$fieldname]" id="xfield[$fieldname]" value="$fieldvalue" />&nbsp;&nbsp;[if-optional]<font style="font-size:7pt">({$lang['xf_not_notig']})</font>[/if-optional]</td>

</tr>

HTML;

      } elseif ($value[3] == "select") {

        $output .= <<<HTML


<tr id="$holderid">

<td class=addnews colspan="2">$value[1]:</td>

<td class=xfields colspan="2"><select name="xfield[$fieldname]">

HTML;

        foreach (explode("\r\n", $value[4]) as $index => $value) {

		  $value = str_replace("'", "'", $value);

          $output .= "<option value=\"$index\"" . ($fieldvalue == $value ? " selected" : "") . ">$value</option>\r\n";

        }
И на продолжении регистрации вот как выглядет допполе: 9c4ea84cc84e.jpg Никак не пойму ,как правильно прописать код, чтоб ячейки были на подобии и всех остальных((( Остальные вот как в шаблоне:
<tr>

<td width="25">&nbsp;</td>

<td width="175" align="right">Номер ICQ</td>

<td width="25">&nbsp;</td>

<td align="left"><input type="text" name="icq" style="width:250px" class="f_input" /></td>

</tr>

{xfields}

<tr>

<td width="25">&nbsp;</td>

<td width="175" align="right">Ваш аватар</td>

<td width="25">&nbsp;</td>

<td align="left"><input type="file" name="image" style="width:250px; height:18px" class="f_input" /></td>

</tr>

Как правильно прописать? Помогите пожалуйста, замучался уже((

Ссылка на сообщение
Поделиться на других сайтах

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

Прописать в шаблоне вместо:

{xfields}
следующее:
<tr>

<td width="25">&nbsp;</td>

<td width="175" align="right">Дата рождения</td>

<td width="25">&nbsp;</td>

<td align="left"><input type="text" name="xfield[birthday]" id="xfield[birthday]" value="" style="width:250px; height:18px" class="f_input" /></td>

</tr>

минус: каждое новое нужно отдельно прописывать в шаблоне

:rolleyes:

Ссылка на сообщение
Поделиться на других сайтах

Спасибо, именно то, что надо ,а еще вопросик, а как прописать тоже самое но чтоб выводилась не форма куда текст вводишь, а допполе в виде выпадающего списка? То есть в админке создал допполе в виде списка, а как его в таком же формате?

Ссылка на сообщение
Поделиться на других сайтах

Спасибо, именно то, что надо ,а еще вопросик, а как прописать тоже самое но чтоб выводилась не форма куда текст вводишь, а допполе в виде выпадающего списка? То есть в админке создал допполе в виде списка, а как его в таком же формате?

Всегда пожалуйста :)

Название поля:

gender

Описание поля:

Ваш пол

Тип поля:

Список

Значение по умолчанию:

пусто

Мужской

Женский

<tr>

<td width="25">&nbsp;</td>

<td width="175" align="right">Ваш пол</td>

<td width="25">&nbsp;</td>

<td align="left"><select name="xfield[gender]" id="xf_gender">

<option value="0" selected></option>

<option value="1">Мужской</option>

<option value="2">Женский</option>

</select></td>

</tr>

:rolleyes:

Ссылка на сообщение
Поделиться на других сайтах

Скажите, а можно как нибудь вывести выпадающий список иначе? У меня например в админке есть два допполя, одно при выборе города москва, другое при выборе категории Санкт-Петербург, там выводится список метро... МОжно ли как то его вывести отдельно? Не таким образом:

<select name="xfield[gender]" id="xf_gender"> 

<option value="0" selected></option> 

<option value="1">Мужской</option> 

<option value="2">Женский</option> 

</select>

А например рпописать какой нибудь тэг чтобы этот список выводился автоматически, а то в списке около 100 позиций, если в ручную писать, то запарное дело... Да и сразу все допполя выводить не хочется тэгом {xfields} так как я хочу свой дизайн придать странички и разные поля хочу в разный местах выводить(

Ссылка на сообщение
Поделиться на других сайтах

inokentik, я не сильно понял вопрос. Есть два отдельных списка зависящих друг от друга? Необходимо при выборе определённого списка выводить дополнительный список? Или нужно проставить доп. поля в разных местах шаблона? В принципе можно вернуть тег {xfields} в шаблон и посмотреть что генерирует скрипт, а там уже и делать с полями всё что угодно.

Ссылка на сообщение
Поделиться на других сайтах

Просто если вернуть {xfields} то поля немного выглядят не так, как я хочу... Вот пример как сейчас, но это с тэгом {xfields}

444.jpg

Но суть в том, что это не совсем так, как я хочу... Мне надо некоторые поля по два на одной строке делать... Например было бы логичней чтоб адрес был в одну строку, то есть:

ул. - поле для ввода улицы - дом №3

А так как поле ввода улицы у меня это заголовок новости, то это поле между двумя моими полями не воткнуть, так как они выводятся одним тэгом {xfields} поэтому мне и хочется все тыкат ьв разных местах как мне нужно, поэтмоу хочется каждый тэг по отдельности выводить... Но например у меня есть два поля списка метро питера и москвы, они появляются в зависимости от выбранной категории... И делать по тому примеру как вы написали это запарно, все надо будет в ручную писать все станции метро, а хочется то например прописать в нужном месте что то типа [xfields_metro] и чтоб в этом месте выводился уже весь список выпадающий, а не в ручную каждую позицию.. Понятно примерно?

А хочу примерно в таком виде сделать

555.jpg

Изменено пользователем inokentik
Ссылка на сообщение
Поделиться на других сайтах

.. Понятно примерно?

Да :)

Выпадающее меню в ряд (на примере дня рождения):

<tr>

<td width="25">&nbsp;</td>

<td width="175" align="right">Дата рождения</td>

<td width="25">&nbsp;</td>

<td align="left"><select name="xfield[day]" id="xf_day">

    <option value="0" selected>Выберите день</option>

    <option value="1">1</option>

    <option value="2">2</option>

    <option value="3">3</option>

    <option value="4">4</option>

    <option value="5">5</option>

    <option value="6">6</option>

    <option value="7">7</option>

    <option value="8">8</option>

    <option value="9">9</option>

    <option value="10">10</option>

    <option value="11">11</option>

    <option value="12">12</option>

    <option value="13">13</option>

    <option value="14">14</option>

    <option value="15">15</option>

    <option value="16">16</option>

    <option value="17">17</option>

    <option value="18">18</option>

    <option value="19">19</option>

    <option value="20">20</option>

    <option value="21">21</option>

    <option value="22">22</option>

    <option value="23">23</option>

    <option value="24">24</option>

    <option value="25">25</option>

    <option value="26">26</option>

    <option value="27">27</option>

    <option value="28">28</option>

    <option value="29">29</option>

    <option value="30">30</option>

    <option value="31">31</option>

</select>&nbsp;<select name="xfield[month]" id="xf_month">

    <option value="0" selected>Выберите месяц</option>

    <option value="1">Январь</option>

    <option value="2">Февраль</option>

    <option value="3">Март</option>

    <option value="4">Апрель</option>

    <option value="5">Май</option>

    <option value="6">Июнь</option>

    <option value="7">Июль</option>

    <option value="8">Август</option>

    <option value="9">Сентябрь</option>

    <option value="10">Октябрь</option>

    <option value="11">Ноябрь</option>

    <option value="12">Декабрь</option>

</select>&nbsp;<select name="xfield[year]" id="xf_year">

    <option value="0" selected>Выберите год</option>

    <option value="1">2010</option>

    <option value="2">2009</option>

    <option value="3">2008</option>

    <option value="4">2007</option>

    <option value="5">2006</option>

    <option value="6">2005</option>

    <option value="7">2004</option>

    <option value="8">2003</option>

    <option value="9">2002</option>

    <option value="10">2001</option>

</select></td>

</tr>
Идем далее, поля в ряд с подсказкой:
<tr>

<td width="25">&nbsp;</td>

<td width="175" align="right">Адрес</td>

<td width="25">&nbsp;</td>

<td align="left"><input type="text" name="xfield[district]" id="xfield[district]" value="Округ" onblur="if(this.value=='') this.value='Округ';" onfocus="if(this.value=='Округ') this.value='';" style="width:200px; height:18px" class="f_input"  />&nbsp;<input type="text" name="xfield[street]" id="xfield[street]" value="Улица" onblur="if(this.value=='') this.value='Улица';" onfocus="if(this.value=='Улица') this.value='';" style="width:200px; height:18px" class="f_input"  />&nbsp;<input type="text" name="xfield[section]" id="xfield[section]" value="Район" onblur="if(this.value=='') this.value='Район';" onfocus="if(this.value=='Район') this.value='';" style="width:200px; height:18px" class="f_input"  /></td>

</tr>
Ну и конечно же комбинированный вариант, как на втором снимке:
<tr>

<td width="25">&nbsp;</td>

<td width="175" align="right">Тип адреса</td>

<td width="25">&nbsp;</td>

<td align="left"><select name="xfield[type]" id="xf_type">

    <option value="0" selected>ул.</option>

    <option value="1">ул.</option>

    <option value="2">ул.</option>

    <option value="3">ул.</option>

    <option value="4">ул.</option>

    <option value="5">ул.</option>

</select>&nbsp;<input type="text" name="xfield[street]" id="xfield[street]" value="Улица" onblur="if(this.value=='') this.value='Улица';" onfocus="if(this.value=='Улица') this.value='';" style="width:150px; height:15px" class="f_input"  />&nbsp;<input type="text" name="xfield[number]" id="xfield[number]" value="Номер дома" onblur="if(this.value=='') this.value='Номер дома';" onfocus="if(this.value=='Номер дома') this.value='';" style="width:100px; height:15px" class="f_input"  />

</td>

</tr>

Размеры полей и их содержимое делаем сами. :)

Ссылка на сообщение
Поделиться на других сайтах

Да я это понимаю все что ты написал... Я не хочу делать так

<select name="xfield[type]" id="xf_type"> 

    <option value="0" selected>ул.</option> 

    <option value="1">ул.</option> 

    <option value="2">ул.</option> 

    <option value="3">ул.</option> 

    <option value="4">ул.</option> 

    <option value="5">ул.</option> 

</select>

Потому как каждую позицию надо писать в ручную!! А если позиций 500, тоже ручками? Я думал можно вписать какой нибудь один тэг, который сразу выведит весь выпадающий список, который задан в амдинке!!!

Ссылка на сообщение
Поделиться на других сайтах

ну так что мешает вернуть тег {xfields} в шаблон и скопировать то, что генерирует скрипт?

Ссылка на сообщение
Поделиться на других сайтах

Да господи, что так сложно то все? Если вставить просто {xfields} то я не смогу построить по дизайну как мне нужно... Если вставлять поля ручками, то хотя бы тот факт, что некоторые поля появляются только когда выбираешь нужную категорию... Сейчас у меня вставлено все автоматом... А если делать ручками, а потом админы добавят новый список в метро, или еще что, это же опять надо будет в шаблоне все править и дописывать... Ладно, походу гиблое дело, оставил тэгом {xfields} и выглядит как так...

444.jpg

Ссылка на сообщение
Поделиться на других сайтах
  • 1 год спустя...

Да господи, что так сложно то все? Если вставить просто {xfields} то я не смогу построить по дизайну как мне нужно... Если вставлять поля ручками, то хотя бы тот факт, что некоторые поля появляются только когда выбираешь нужную категорию... Сейчас у меня вставлено все автоматом... А если делать ручками, а потом админы добавят новый список в метро, или еще что, это же опять надо будет в шаблоне все править и дописывать... Ладно, походу гиблое дело, оставил тэгом {xfields} и выглядит как так...

444.jpg

Не появилось решение этой проблемы?

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...