Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

fsphp

[Resolvido] Function Anti_SQL_Injection ou mysql_real_escape_stri

Recommended Posts

Pessoal,

 

mysql_real_escape_string ou uma função Anti_injection?

 

Para que criar funções com str_replace(), preg_replace(), strip_tags(), addslashes(), eregi_replace(), preg_match(), etc

 

SE EXISTE UMA NO MYSQL QUE RESOLVE?

 

ENTÃO, A PERGUNTA QUE NÃO QUER CALAR:

 

Function Anti_SQL_Injection ou mysql_real_escape_string?,

 

 

Valeu pessoal.

Compartilhar este post


Link para o post
Compartilhar em outros sites

O mysqli também tem: mysqli_real_escape_string , os demais eu não conheço.

 

No entanto, para quem usa mysql, não basta essa função?

 

Valeu.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nesse caso, basta instanciar as variáveis por ela?

 

Quem já usou essa função?

 

Valeu pessoal!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nesse caso, basta instanciar as variáveis por ela?

 

Quem já usou essa função?

 

Valeu pessoal!

Eu já usei, porem troquei por mysql_escape_string()

 

e prefiro o uso de funções, até mesmo porque se precisar editar tenho a função em um arquivo único de configuração do sistema "config" ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Valeu WDuarte,

 

Mas a documentação do php diz que a função mysql_escape_string está depreciada:

 

Descrição

string mysql_escape_string ( string $unescaped_string )

This function will escape the unescaped_string , so that it is safe to place it in a mysql_query(). This function is deprecated.

 

This function is identical to mysql_real_escape_string() except that mysql_real_escape_string() takes a connection handler and escapes the string according to the current character set. mysql_escape_string() does not take a connection argument and does not respect the current charset setting.

Entretanto, como você usava a função? Você simplesmente fazia uma chamada a ela antes de inserir no db?

 

Até mais pessoal.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Opá eai

 

Na função primeiro verifico se get_magic_quotes_gpc() existe!

 

Senão, cai na mysql_escape_string mas isso vai acontecer no php6

 

mas preste atenção aqui

 

This function will escape the unescaped_string , so that it is safe to place it in a mysql_query().

Mas em todo caso mysql_real_escape_string da erro em meu server e não consegui descobri o porque!!!

 

...e chamo a função antes de inserir no bd, não faz sentido usar depois ai já é tratamento de dados

 

http://forum.imasters.com.br/public/style_emoticons/default/assobiando.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Uma coisa que não entendi é porque tem que fazer a verificação com a get_magic_quotes_gpc se os valores são passados por um formulário? No caso de strings via form essa verificação não é necessária, ou precisa?

 

Vou fazer uns testes para ver como mysql_real_escape_string trabalha, pois no meu caso, as informações que envio ao db são sempre via form.

 

Quanto a fazer funções e inserir nos scripts, essa é a portabilidade delas. É preciso analizar o que será melhor, qual a aplicabilidade de cada parte do código para não ter que alterar "trocentos" arquivos.

 

http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Uma coisa que não entendi é porque tem que fazer a verificação com a get_magic_quotes_gpc se os valores são passados por um formulário? No caso de strings via form essa verificação não é necessária, ou precisa?

a partir do php 5.1 magic_quotes_gpc vem desativado por padrão por questões de performance.

 

magic_quotes_gpc serve para escapar de caracters especiais automaticamente para todo tido de envio de dados via GPC (GET, POST, COOKIE)

 

não faz sentido manter sempre ativo pois o escape de caracteres será utilizado em casos específicos como exibição literal de caracteres, inserções em banco dados e outros operações delicadas.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.