parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

Ответ

Spearance 24.10.2002 09:00

Тут все просто. В форму передаешь всего один параметр - текущий номер записи. Все остальное считаешь.
@scrol1[] Постраничный скролер
#Считаем сколько будет номеров 1-5 | 6-10

$shag[^math:ceiling(^eval(^таблица.count[]/$colvo))]
$sum3[1]

#$colvo - шаг внутри скролера

$sum4[$colvo]

#Если $sum3 == $sum4 выводим 1 | 2 | 3

^if($sum3 == $sum4){
	^for[scroll](1;^таблица.count[]){
		^if($form:p_no == ^eval($sum3-1)){
			<nobr>${sum3}</nobr>
		}{
			<a href="/index.html?p_no=^eval($sum3-1)" class="scroll"><nobr>${sum3}</nobr></a>
		}
		$sum3[^eval($sum3+1)]
	}[ ]
}{
	^for[scroll](1;$shag){
		^if($form:p_no == ^eval($sum3-1)){
			^if($sum4 > ^таблица.count[]){
				^if($sum3 == ^таблица.count[]){
					<nobr>${sum3}</nobr>
				}{
					<nobr>${sum3}-^таблица.count[]</nobr>
				}
			}{
					<nobr>${sum3}-$sum4</nobr>
			}
		}{
			^if($sum4 > ^таблица.count[]){
				^if($sum3 == ^таблица.count[]){
					<a href="/index.html?p_no=^eval($sum3-1)">${sum3}</a>
				}{
					<a href="/index.html?p_no=^eval($sum3-1)"><nobr>${sum3}-^таблица.count[]</nobr></a>
				}
			}{
				<a href="/index.html?p_no=^eval($sum3-1)"><nobr>${sum3}-$sum4</nobr></a>
			}
		}
		$sum3[^eval($sum3+$colvo)]
		$sum4[^eval($sum4+$colvo)]
	}[ | ]
}
Пример рабочий. Коментарии писать лень. Скролер рассчитан как на вывод по одной записи (1 | 2 | 3) так и вывода группами (1-5 | 6-10). На текущей странице ссылка как ссылка не работает.