| Новости | FAQ | Авторы | Документация | В действии | Библиотека |
| Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
R. Averkov 04.11.2006 18:06 / 04.11.2006 18:08
Из формы приходит строка. Надо сделать ее числом.^if(^form:n.int(0)){
^if($form:n < 100){
$n($form:n)
}{
$n(100)
<p class="x-small">Больше, чем 100 фотографий,
показать не получится. А $form:n &mdash^; это явно больше.</p>
}
}{
<p class="x-small">В поле ввода должно быть число.</p>
}Можно переписать по-другому: ^if(^form:n.int(100) < 100){
$n($form:n)
}{
^if(^form:n.int(0)){
<p class="x-small">Больше, чем 100 фотографий,
показать не получится. А $form:n &mdash^; это явно больше.</p>
}{
<p class="x-small">В поле ввода должно быть число.</p>
}
}Учтите, что если $form:n = 0, то в вышеприведенных примерах это будет означать, что ввели не число. Поэтому, можно изменить это условие следующим образом: # если вас не интересуют отрицательные значения
^if(^form:n.int(-1) < 0){В поле ввода должно быть число}Еще один, более грамотный вариант: ^try{
^if($form:n < 100){
$n($form:n)
}{
<p class="x-small">Больше, чем 100 фотографий,
показать не получится. А $form:n &mdash^; это явно больше.</p>
}
}{
^if($exception.type eq "number.format"){
$exception.handled(true)
<p class="x-small">В поле ввода должно быть число.</p>
}
}