parser

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

 

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

Проблема с вызовом sql-запроса из пользовательского оператора [produced no result]

Marat Suponitsky 12.05.2006 18:30

Имеется код:
@infofromdb[]
^db_users{
	$nickname[^string:sql{
		SELECT nickname FROM users WHERE login = '$cookie:user'
	}]
}

@error[fromdb]
^if(def $cookie:user){
	$fromdb
}

@main[]
^error[^infofromdb[]]
Данный код выдает ошибку - produced no result, but no default option specified. По моей логике, вызов метода ^infofromdb[] с sql-запросом должен происходить только в случае прохождения проверки на существование куки "user", которая реализована в операторе @error[]. Но в данном случае вызов метода происходит до проверки. Если же проверку существования куки поместить и в оператор @infofromdb[],
@infofromdb[]
^if(def $cookie:user){
	^db_users{
		$nickname[^string:sql{
			SELECT nickname FROM users WHERE login = '$cookie:user'
		}]
	}
}
то ошибки не возникает, что еще раз свидетельствует о выполнении метода до проверки в @error[]. Проблема не фатальна, но первый раз моя логика не совпала с логикой Парсера =) Обьясните, в чем моя ошибка?