Перейти к содержимому


Ошибка при вставке php кода в тело шаблона

php

Сообщений в теме: 6

#1 Mr-Eugeniusz

    Новичок

  • Пользователи
  • Pip
  • 4 сообщений

Отправлено 10 Июль 2012 - 13:23

Здравствуйте.

У меня стоит задача по уникализации поля типа "список". Изначально в настройках поля указывается список всех возможных значений. Далее необходим сделать так, чтобы при добавлении данных выпадающее меню со списком содержало ранее не использованные значения.

Пример: в настройках поля список возможных значений заполнен так:
строка 1
строка 2
строка 3
Затем, я перехожу в раздел добавления данных и создаю запись, в которой моё поле в качестве значения имеет "строка 2". Теперь, когда я захочу добавить данные ещё, у меня в списке не должно появляться "строка 2"

Для реализации задачи я пробовал писать php скрипт с sql-запросом на выборку ранее использованных значений, но ничего не получилось, т.к. теги {php} ... {/php} и <? ... ?> оказались неработоспособными.

Как лучше и возможно ли вообще реализовать данный механизм?

Заранее спасибо.

#2 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 759 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 10 Июль 2012 - 13:35

В каком именно шаблоне вы вносили изменения? Не совсем понял. Что касается данной задачи, то она невозможна на существующем поле типа "список".

#3 Mr-Eugeniusz

    Новичок

  • Пользователи
  • Pip
  • 4 сообщений

Отправлено 10 Июль 2012 - 14:22

Т.е. я не могу изменять содержимое поля ИД ( выпадающий select на картинке)?
см. ссылку http://pumpshooter.com/hNe0avCg

Сообщение отредактировал Mr-Eugeniusz: 10 Июль 2012 - 14:26


#4 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 759 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 10 Июль 2012 - 14:55

Нет, такой функционал пока не предусмотрен. Но возможно, появится в будущем.

#5 Mr-Eugeniusz

    Новичок

  • Пользователи
  • Pip
  • 4 сообщений

Отправлено 10 Июль 2012 - 15:13

Слушайте, ну идиотизм же. Я как программист это говорю. Получается, что поле уникальное и выбрать для разных записей два одинаковых значения нельзя, но всё же они выпадают. Для чего? Сделайте пожалуйста. Кстати и сделать это не сложно.

if($field['type'] == 'unique') {
$used_items = SomeFrameworkSQL::fetchAll('SELECT DISTINCT('.$field['name'].') FROM `tbl` WHERE ...');

foreach($show_array as $key=>$val) {
if(in_array($val, $used_items)) {
unset($show_array[$key]);
}
}
}

Сообщение отредактировал Mr-Eugeniusz: 10 Июль 2012 - 15:15


#6 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 759 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 10 Июль 2012 - 15:24

Не понял, при чем тут уникальное поле? Я так понял, что вам необходим динамически изменяемый через вычисление список? Как я уже сказал, возможности добавлять такие вычисления у нас пока нет. Что касается приведенного примера, то он тоже спорный, кому-то это надо, кому-то нет. Возможно, включим в виде опции. Но пока хватает куда более важных и срочных задач.

#7 Mr-Eugeniusz

    Новичок

  • Пользователи
  • Pip
  • 4 сообщений

Отправлено 10 Июль 2012 - 16:28

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





Количество пользователей, читающих эту тему: 2

0 пользователей, 2 гостей, 0 анонимных