psyvek |
|
---|---|
Подскажите пожалуйста, как сделать фильтр для list.tpl? Используются экстра поля (пример: вид лицензии) и нужно выводить отфильтрованный список по аналогии со страницей пользователей (страна, группа...), только это будет лицензия, дата...
Еще вопрос, как сделать сортировку по рейтингу или по комментариям? Добавлено 25 Минут спустя: Нашел как это в седе было http://my.site/list.php?c=cat&s=date&w=desc&o=extra-field&p=значение в котонти не сработало. Люди подскажите, как это делается, очень нужно. |
|
This post was edited by psyvek (2009-11-17 04:15, 15 years ago) |
Sergey |
|
---|---|
для поля page_extra1
http://my.site/list.php?c=cat&s=date&w=desc&o=extra1&p=значение смотрим текст list.inc.php строка 112 WHERE page_cat='$c' AND (page_state=0 OR page_state=2) AND page_$o='$p'то есть к page_ добавляется значение по ключу o т.е. extra1 что даст в сумме page_extra1 www.cotonti.mobi
|
psyvek |
|
---|---|
А как можно вывести несколько значений в одной категории?
http://my.site/list.php?c=cat&s=date&w=desc&o=extra1&p=значение1+значение2 |
Sergey |
|
---|---|
Для этого значения необходимо разделить запятыми: т.е.
http://my.site/list.php?c=cat&s=date&w=desc&o=extra1&p=значение1,значение2 Далее правим оператор вот так приблизительно WHERE page_cat='$c' AND (page_state=0 OR page_state=2) AND FIND_IN_SET(page_$o,'$p')тут такое дело функция FIND_IN_SET разложит $p на массив и сравнит по совпадению с page_$o вроде, что-то так Да это надо в двух местах и на строке 107 -там считают число для паджинации и в 112 для выборке www.cotonti.mobi
|
psyvek |
|
---|---|
Cпасибо огромное.
Последний вопрос, а как вывести значения из двух экстра полей? http://my.site/list.php?c=cat&s=date&w=desc&o= extra1&p=значение1 что то тут extra2&p=значение1,значение2 |
Sergey |
|
---|---|
начнем с ввода
$o = sed_import('o','G','ALP',16); $p = sed_import('p','G','ALP',16);фильтр ALP не берет запятых, надо вот так $o = sed_import('o','G','ALP',16); $p = sed_import('p','G','TXT');далее добавляем чтение еще одной группы $o = sed_import('o','G','ALP',16); $p = sed_import('p','G','TXT'); $o2 = sed_import('o2','G','ALP',16); $p2 = sed_import('p2','G','TXT');теперь корректируем запрос, делаем вставку $sql = sed_sql_query("SELECT COUNT(*) FROM $db_pages WHERE page_cat='$c' AND (page_state='0' OR page_state='2') AND FIND_IN_SET(page_$o,'$p')" .((!empty($o2) && !empty($p2))?" AND FIND_IN_SET(page_$o2,'$p2')":"") );и нечто подобное в 112 оператор запрос будет http://my.site/list.php?c=cat&s=date&w=desc&o= extra1&p=значение1,значение2&o2=extra2&p2=значение1,значение2 Я так собственно обозначил общую схему www.cotonti.mobi
|