parser

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

 

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

Кажется получилось, но не оптимально

wergery 16.03.2012 00:46 / 16.03.2012 00:46

для пробы взял такой запрос:
art=001R00590&count=4&order=1234&supplyer=gt&art=001R00577&count=8&order=587&supplyer=rikom
И создал таблицу топорным способом:
	^if(def $form:art && def $form:count && def $form:order && def $form:supplyer){
$getz[^table::create[nameless]{
^form:tables.art.menu{$form:tables.art.field}[	]
^form:tables.count.menu{$form:tables.count.field}[	]
^form:tables.order.menu{$form:tables.order.field}[	]
^form:tables.supplyer.menu{$form:tables.supplyer.field}[	]
}]
	}
Затем развернул таблицу с помощью .flip и переписал в себя же:
$getz[^getz.flip[]]
Ну и тут вывод на экран:
<table>
	<tr>
		<td>ART</td>
		<td>COUNT</td>
		<td>ORDER</td>
		<td>SUPPLYER</td>
	</tr>
^getz.menu{
	<tr>
		<td>$getz.0</td>
		<td>$getz.1</td>
		<td>$getz.2</td>
		<td>$getz.3</td>
	</tr>
}
</table>
Вот. такое ощущение, что выкопал котлован совочком, при том что есть экскаватор за спиной.
Как вариант, можно ведь создать временную таблицу в БД, и в нее вставлять $form:..., а затем делать простой SELECT.
На php все это, проще, несомненно. max_rip прав, в том что $form: - слабая сторона парсера.