SQL Injection no Yii

Ao manipular dados de formulários no Yii, é necessário fazer tratamentos para evitar SQL Injection?

O Yii é protegido contra SQL Injection por padrão?

Vou precisar criar alguma função para tratar os dados vindos dos formulários?

Genésio, se não me engano por ele usar o PDO ele já faz algumas validações.

Tb ñ sei mnt sobre o assunto mas se vc reparar nos models do ContactForm.php e LoginForm.php verá q ele traz um método rules ali vc consegue fazer algumas validações. Tente ver tb na documentação do Yii sobre esse rules.

Por exemplo, sempre faço a recuperação de valores vindos dos forms assim:


$var = $_POST["campo"]

ou assim:


$var = $_GET["campo"]

Nesse caso meu controller vai receber os dados sem nenhum tratamento.

A dúvida é:

O Yii já trata os dados automaticamente?

Eae galera.

Genésio, complementando o que o Cálcio disse:

Abaixo um esclarecimento sobre a prevenção de SQL injection com as instruções preparadas.

http://br.php.net/manual/pt_BR/pdo.prepare.php

O Yii trata os valores a serem armazenados no bd assim:

http://www.yiiframework.com/doc/guide/1.1/pt_br/database.ar#sec-2

No caso de requisições através do $_GET se vc não tratar diretamento irá sobrar para a classe PDO método prepare pois lá na raiz o Yii vai utilizar esse método para processar as consultas.

Vejo dessa forma.

Se alguém tem mais informações, por favor não deixe de compartilhar.

Flws.

:wq