Комментарии

Проверка значений во вспомогательном методе
( 0 Голосов )

Класс JForm внедрен в версии Joomla 1.6 и предоставляет отличные средства для проверки достоверности параметров, вводимых пользователями. Покажем, как это делается, на двух наглядных примерах. Вернемся к полю count из XML-файла, где указывается максимальное количество статей, отображаемых в данном модуле. В настоящий момент имеется следующий код:

<field name="count" type="text" default="5" label="MOD_JOOMPRO_ARTICLES_AUTHOR_FIELD_NUMBER_LABEL" description="MOD_JOOMPRO_ARTICLES_AUTHOR_FIELD_NUMBER_DESC"> </field>

Значение должно быть положительным целым, чтобы считаться достоверным. Но в данный момент код позволяет ввести в текстовом виде не только положительное, но и отрицательное целое и нулевое значение. А это приведет к тому, что запрос будет выполняться без каких-либо ограничений. В данном случае будут перечислены все статьи указанного автора. На крупном веб-сайте таких статей может оказаться десятки и даже сотни, что, вероятно, затруднит их отображение, а возможно, даже скажется на производительности веб-сайта.

Во избежание подобных осложнений мы можем усовершенствовать рассматриваемый здесь код несколькими способами. В частности, организовать проверку значения во вспомогательном методе, изменяя его на используемое по умолчанию, если оно оказывается вне заданных пределов. Для этого можно, например, ввести следующий фрагмент кода:

$count = (int) $params->get('count', 5);
$count = ($count  <= 0 | $count > 10) ? 5 : $count;
$db->setQuery($query, 0, $count);

Благодаря такой проверке достоверности мы можем быть всегда уверены в том, что введенное значение находится в пределах от 1 до 10.


Понравился материал? Пригодилась информация? Плюсани в социалки!


 
Похожие новости
Добавить комментарий


Защитный код