Регистрация
Регистрируясь, вы подтверждаете свое согласие с соглашением об использовании персональных данных.
Восстановление пароля
ЧЁРНАЯ ПЯТНИЦА: -40% на редакции E-commerce и Extra до 2 декабря
Купить со скидкой

Как реализовать подобное?

06.07.2006, 16:11
Гость
Гость

Приведу ссылочку: http://www.tpp-inform.ru/tpv/

Хочу реализовать подобное. Создан раздел. Материалы в нем также относятся к разным номерам издания. Эти номера (поле в шаблоне). При помощи listQuery(...) создаю список номеров. Как теперь средствами неткэт при выборе того или иного номера загрузить материалы только выбранного номера?
06.07.2006, 16:30
DiGGy
DiGGy
DiGGy

Зарегистрирован:
2005-04-04
Сообщений: 1546

Не очень ясно как реализованы номера и материалы
1. Номер - это разделы рубрикатора, а материалы - назначенный шаблон
2. Номеры и материалы - разные шаблоны, и шаблон материалы ссылается на ИД записи шаблона номеров

Также не ясно, что вы пишете в listQuery

Допустим у Вас 2-й вариант, тогда Вам нужно в шаблоне материалов в системных настройках прописать подобное:
Код:

if ($nomer) $query_where = "a.Nomer = '${nomer}'";


тогда при обращении к разделу с материалами по адресу http://www.mydomain.ru/materials/?nomer=12 - у вас будут выданы материалы номера 12

зы: ну или я чего не так понял...

Temet nosce...
06.07.2006, 18:10
Гость

Зарегистрирован:
1970-01-01
Сообщений: 665

http://netcat.ru/dealers/advice/classes/classes_33.html
Связка примерно такого же рода.
07.07.2006, 11:26
Гость
Гость

Цитата:
Не очень ясно как реализованы номера и материалы


Газета - это раздел. Для раздела создан 1 шаблон, то есть одна таблица вида MessageXX. Номер газеты, рубрика, название статьи, сама статья, фото и автор, это поля данного шаблона и данной таблицы. Пока все реализованно именно так.

Цитата:
Также не ясно, что вы пишете в listQuery


SELECT distinct FullCount, Issue, Monthes_Name, Year FROM Message34, Classificator_Monthes where Monthes_ID=Month order by Year DESC, Month DESC, Issue DESC

Обыкновенный запрос к БД.

Вы можете конкретнее описать второй ваш вариант?
07.07.2006, 14:56
DiGGy
DiGGy
DiGGy

Зарегистрирован:
2005-04-04
Сообщений: 1546

В Вашем случае:
допустим раздел "Газета" доступен по ссылке "www.mydomain.ru/gazeta/",
а поле "Номер газеты" в шаблоне MessageXX называется Nomer

тогда, для загрузки материалов того или иного номера, Вам необходимо в системных настройках Вашего шаблона прописать, что я указал выше
Код:
if ($nomer) $query_where = "a.Nomer = '${nomer}'";


после этого все материалы определенного номера будут доступны по ссылке "www.mydomain.ru/gazeta/?nomer=xx", xx - номер газеты..

также для вывода можно использовать ф-ию ".s_list_class(zz,yy,"&nomer=xx").", zz - ИД раздела, yy - ИД шаблона в разделе

что касается моего примера с 2-мя шаблонами, то это для реализации аналога списка (в вашем случае это список Classificator_Monthes). реализация списка путем создания шаблона позволяет указать не только "Наименование", но и другие дополнительные данные...

Temet nosce...
12.07.2006, 16:21
Гость
Гость

Итак, <select> в веб-форме, содержащий список номеров газеты называется Number. Поле "Номер газеты в шаблоне MessageXX называется Issue.

В системных настройках шаблона пишу так:

Код:
if ($Number) $query_where = "a.Issue = '${Number}'";


Имеем. В разделе выводятся материалы действительно всего одного номера газеты. Но не выбранного, а самого первого. Как с этим бороться? Что я не так делаю?
13.07.2006, 09:39
DiGGy
DiGGy
DiGGy

Зарегистрирован:
2005-04-04
Сообщений: 1546

Уважаемый, Вовкин.

Если Вы хотите, чтобы при выборе определенного номера из выпадающего меню, сразу же загружалось содержание этого номера, то Вам как минимум нужно подучить JScript, а не функционал Неткета.

Temet nosce...
13.07.2006, 09:40
Гость
Гость

Гран мерси за общий подход и рекомендации. Разобрался. Просто вылетело из головы, что данные из селекта моего надо еще считать предварительно. Код исправил на:
Код:
if ($_GET[Number]) $query_where = "a.Issue = '$_GET[Number]'";


И разумеется все заработало.
13.07.2006, 11:58
Гость
Гость

Есть у меня еще один вопрос. Можно ли в функцию listQuery(char $sql_query, char $output_template) во вторую ее часть $output_template внедрить условный оператор opt($var, $output) ?

Речь идет о том, что когда я формирую таким образом свой <select>, хочу выбранный до сабмита option сделать выделенным.
13.07.2006, 17:28
DiGGy
DiGGy
DiGGy

Зарегистрирован:
2005-04-04
Сообщений: 1546

да, можно

Temet nosce...
13.07.2006, 17:54
Гость

Зарегистрирован:
1970-01-01
Сообщений: 665

".opt($a,"").")
198 196 2006-07-13 17:54:17 8620
Описание проекта