Cake оснащен классом обработки, который вы можете использовать для того, чтобы избавиться от отправленных злоумышленником данных или других нежелаемых данных. Обработка это основная библиотека, так что вы можете использовать ее где угодно в своем коде, но лучше все же использовать ее в контроллерах или моделях.
<?
// Сначала, включите центральную библиотеку:
uses('sanitize');
// Далее, создайте новый объект обработки:
$mrClean = new Sanitize();
// Отсюда вы можете воспользоваться обработкой, чтобы почитистить свои данные
// (Эти методы объясняются в следующем разделе)
?>
В этом разделе рассказывается как пользоваться некоторыми функциями предоставленными обработкой.
Эта функция убирает все из целевой $string, что не является цифрами и буквами. Однако, вы можете разрешить использование определенных символов, просто поместите их в масив $allowed.
<?
$badString = ";:<script><html>< // >@@#";
echo $mrClean->paranoid($badString);
// исходящее: scripthtml
echo $mrClean->paranoid($badString, array(' ', '@'));
// исходящее: scripthtml @@
?>
Этот метод помогает вам приготовить к отображению в существующей HTML верстке, отправленные пользователем данные. Особенно он полезен, если вы не хотите, чтобы пользователь поломал вашу верстку или вставлял изображения или скрипты в коментарии вашего блога, посты форума и т.п. Если $remove установлен на true, любой код HTML будет удален из $string, а потом отрендерен как объект HTML.
<?
$badString = '<font size="99" color="#FF0000">HEY</font><script>...</script>';
echo $mrClean->html($badString);
// исходящее: <font size="99" color="#FF0000">HEY</font><script>...</script>
echo $mrClean->html($badString, true);
// исхдящее: font size=99 color=#FF0000 HEY fontscript...script
?>
Используется для избежания запросов SQL, добавляя слеши. Зависит от текущих настроек системы magic_quotes_gpc.
Эта функция прямолинейный, многоцелевой чистильщик. Используется на полных масивах (вроде $this->params['form'], например). Функция берет масив и чистит его: ничего не возвращает, поскольку очистка происходит в самом масиве, над каждым элементом:
грр...круто... респкт за ресурс :) хоть и переводики иногда кривовати но все равно респкт :))
Не знаю как в 1.2, но в 1.1 $mrClean->sql() не имеется. Есть $mrClean->escape().