Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Толку вообще что я сделала как вы сказали в одну таблицу все запихнула.. Реакции фильтра 0.. Реакции того что я выбираю - 0.. Не каких записей в бд и прочего также нет.. |
Цитата:
define('DEBUGER', 1); //режим отладки: 1 - вывод ошибок MySQL, 0 - вывод сообщения define('SQLERROR', 'Что-то не срослось...'); //сообщение, которое будет выводиться при ошибках БД на удаленном сервере Запросы при этом могут быть такими $q = mysql_query('тело запроса') or die(DEBUGER ? __FILE__.'/'.__LINE__.'/'.mysql_error() : SQLERROR); Если при запросе возникнет ошибка, то в режиме отладки будет выдана строка с именем файла и номером строки где произошла ошибка, и описанием самой ошибки. При отключенной отладке будет выводится сообщение определенное константой SQLERROR. die - это синоним exit, то есть выход из скрипта, что не приведет к выводу дальнейших неизбежных ошибок. Если нет ошибок, значит можно безопасно производить разборку запроса - если запрос вернул записи одно действие, иначе иное. Цитата:
Вообще можно по структуре таблицы конструировать форму. То есть ее параметры будут определять типы полей формы и другие их свойства. Это означает, что если в структуре таблицы произойдут изменения, они автоматически будут отражены и формой. Таким образом во многом даже и не потребуется корректировать скрипты. Получить параметры полей таблицы можно посредством запроса: 'SELECT перечисление параметров FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = "имя базы" AND TABLE_NAME = "имя таблицы"' Например для поля ENUM, которое нас интересует, нам нужен только один параметр (примем по умолчанию, что это поле в sql таблице последнее) - COLUMN_TYPE, которое для примера выше вернется в массиве под последним индексом [COLUMN_TYPE] => enum('Шеф','Бухгалтер','Бригади р','Рабочий') которое можно извлечь из всех полей функцией array_pop(). Далее получив это значение сформировать список: preg_match_all("/(?<=')[^',]+(?=')/ui", $array['COLUMN_TYPE'], $enum); $select = '<select name="...">' . implode(array_map(function($k, $v) use($set) { return '<option value="'.$k.'">' . $v . '</option>'; }, range(1, count($enum[0])), $enum[0])) . '</select>'; echo $select; Если редактирование, то в use передается значение поля enum для записи (числовое, либо строковое), которое сравнивается в анонимной функции с соответствующим значением ($k или $v) и определяя выбранной соответствующую опцию. В случае добавления субъекта в базу этого не надо, но нужно добавлять опцию "Выберите" с пустым значением (если только не определено значение по умолчанию отличное от "нет" или null). Если это затруднительно, то можно построить список и по основной таблице - выбрать отдельным запросом из основной таблицы только уникальные числовые и текстовые значения этого поля и построить по ним список. Понятно, что такое возможно только в том случае, что все 15 значений определены для субъектов. Но и понятно, что такое состояние таблицы не является гарантией. Если же не ENUM, а отдельной таблицей, то запрос к этой таблице, и строить по ее данным список, принцип такой же будет как и в случае ENUM. |
Цитата:
Просто вы делаете что-то не так. |
Цитата:
|
Цитата:
То что по ссылке, это работа такого плагина как jQury плагин isotope, который работает исключительно на клиенте с объектами на странице. Что есть категория? Это должность? Значит можно при выводе связать должности по имени класса, что потом и использовать в isotope (почитайте документацию и посмотрите примеры кода по ссылке). PS. Кстати, чтобы обеспечить такой вывод на странице, нужна сортировка запроса по должности (если конечно категория о которой вы все говорите, это и есть должность). |
Вложений: 1
Цитата:
Цитата:
Вот смотрите что я хочу сделать вы меня уже поняли наверно что я хочу))) |
Плагин isotope использует атрибут data-filter для описания объектов определяемые фильтром. Для кнопки "Все", это будет data-filter="*", а например data-filter=".name" означает, что по нажатию этой кнопки на странице будут отображены только элементы с именем класса "name", для data-filter=".name2,.name3" элементы с этими классами.
То есть чтобы сформировать код страницы для этого плагина можно запрос сортировать по должности, давая элементам любое имя класса с добавлением числового значения должности (читайте об этом в ранее написанном), то есть будет типа style1, style2, ... style15 Правда если у вас субъектов немного и они все сразу могут быть выведены на страницу. Еще раз посмотрите пример html-верстки в примерах этого плагина, ведь вам же это связать со своим кодом/данными. Для фильтрации на странице этим плагином никаких input и select не требуется, зачем они вам нужны тогда не понятно. |
Цитата:
|
Цитата:
|
Цитата:
|
Часовой пояс GMT +3, время: 03:48. |