parser

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

 

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

Танец со SWITCH-ами и использование SQL запроса....

DivineArtS 26.04.2006 20:02 / 26.04.2006 20:05

@body_main[show_all]
<center><H1>Наличие/отображение товара</H1>
</center>
^connect[$connect_string]{ $show_all[^table::sql{SELECT cat_id, name, level, availiable FROM catalogue WHERE level = '$request:query'}] }
^if($show_all){
### if we have the query redirect then...
<center><H2>Мы чичас здесь: $request:query</H2></center>
<form method="post" enctype="multipart/form-data">
<table border="1" bordercolor="black" width="100%">
^show_all.sort{$show_all.name}[desc]
^show_all.menu{
<tr valign="top"> 
######### catalogue cell
<td width="40%" valign="middle"><b>$show_all.name</b></td>
<td valign="middle">$show_all.level</td>
######### availiability sign
<td width="10%" valign="middle">
^switch[$show_all.availiable]{
^case[0]{<input name="$show_all.cat_id" type="radio" value="1"><img src="/images/yes.gif" alt="Есть в наличии"><br>
		<input name="$show_all.cat_id" type="radio" value="2"><img src="/images/await.gif" alt="Ожидается"><br>
		<input name="$show_all.cat_id" type="radio" value="0" checked><img src="/images/no.gif" alt="Нема">
		<input name="dummy" type="hidden" value="$show_all.cat_id">}
^case[1]{<input name="$show_all.cat_id" type="radio" value="1"checked><img src="/images/yes.gif" alt="Есть в наличии"><br>
		<input name="$show_all.cat_id" type="radio" value="2"><img src="/images/await.gif" alt="Ожидается"><br>
		<input name="$show_all.cat_id" type="radio" value="0"><img src="/images/no.gif" alt="Нема">
		<input name="dummy" type="hidden" value="$show_all.cat_id">}
^case[2]{<input name="$show_all.cat_id" type="radio" value="1"><img src="/images/yes.gif" alt="Есть в наличии"><br>
		<input name="$show_all.cat_id" type="radio" value="2"checked><img src="/images/await.gif" alt="Ожидается"><br>
		<input name="$show_all.cat_id" type="radio" value="0" ><img src="/images/no.gif" alt="Нема">
		<input name="dummy" type="hidden" value="$show_all.cat_id">}
}
</td>
######### END OF catalogue cell
</tr>
$av_ch[$form:tables.[$show_all.cat_id]]
^connect[$connect_string]{
	^if($av_ch){
		^void:sql{
			UPDATE catalogue 
			SET availiable='$av_ch.field' 
			WHERE cat_id='$form:dummy'
			}
		$response:refresh[$.value(0)]
		}
}
### end of ^menu below
}
</table>
<input name="submit" type="submit" value="Изменить"> Либо <a href="/admin/availiable_check.html">Выбрать другой раздел</a></form>
}{
### but if we don't then... chooser below
^connect[$connect_string]{ 
<form method="post" enctype="multipart/form-data">
<center><b>Выберите категорию:</b>$level_select[^table::sql{SELECT level, title FROM menu WHERE r_l = 0}]
  <select name="level">
    <option value=""></option>
    ^level_select.menu{<option value="$level_select.level">$level_select.title</option>}
  </select><input name="13" type="hidden" value="12">&nbsp^;<input name="" type="submit" value="Выбрать"> ... где будем менять?</center>
</form>
}
^if($form:13 eq '12'){$response:refresh[ 
   $.value(0) 
   $.url[?$form:level]] 
]}
### end ^if below
}
таков код странички где используются radiobutton дла переключения статуса наличия товара [0-1-2]. Их соответственно три и значения записываются в БД. только когда я изменяю значения - опять должно происходить считывание статуса с БД и ставить радиобатн checked, но это происходит только после рефреша в лучшем случае, хотя в БД сразуже значения меняются после первой отправки формы.
Вопрос в том: как бы сделать так, чтобы не смущать человека который изменения сделал (и они зафиксированы в БД) но физически они не отобразились (в качестве перемаркирования radiobutton)???? изза того ли это что данная информация не сразу доступна? я пытался через
$response:refresh[...]
но чото не то совсем получается-я даже логику результата обновлений не могу проследить...