parser

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

 

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

Вот что получилось в итоге.

AL 27.01.2006 15:31 / 27.01.2006 15:32

Вот что получилось в итоге.
@CLASS
select

@create[param]
$self.array[$param.array]
$self.name[$param.name]
$self.key[$param.key]
$self.value[$param.value]
$self.first_key[$param.first_key]
$self.first_value[$param.first_value]
$self.error_value[$param.error_value]
$self.error[$param.error]
$self.selected[$param.selected]


@write[]
<select name="$self.name">
<option value="$self.first_value">$self.first_key</option>
^self.array.menu{
	^if(${self.array.$value} eq '${form:$name}'){
		$select[selected]
	}{
		$select[]
	}
	
	<option $select value="${self.array.$value}">${self.array.$key}</option>
}

</select>
${form:${self.name}}


@valid[][name;error]
$name[$self.name]
^if(${form:$name} == $self.error_value){
	$result(0)
}{
	$result(1)
}

@error_m[]
$result[$self.error]
Вызов:
$array[^table::sql{SELECT id, rus, eng FROM options WHERE class='1'}]
$param[
	$.array[$array]
	$.name[name]
	$.key[rus]
	$.value[id]
	$.first_key[Выберите раздел]
	$.first_value[0]
	$.error_value[0]
	$.error[Вы не выбрали раздел]
	$.selected[$form:name]
]
$obj[^select::create[$param]]
<form method="post">
^obj.write[]
<input type="submit">
</form>
$res[^obj.valid[]]
^if(^obj.valid[] == 0){
      $error[^obj.error_m[]]
      $error
}
Наверное класс ужасный, но принцип вроде понятен.