Ir para conteúdo

POWERED BY:

Arquivado

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

Luizgrs

Caracteres 'proibidos'

Recommended Posts

Além da aspas simples quais outros caracteres são 'proibidos' como parâmetro em buscas sql?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Basicamente só as ' aspas simples mesmo, pq elas estando bloqueadas quaisquer outros comandos SQL não surtirão efeito.

Compartilhar este post


Link para o post
Compartilhar em outros sites
Confirmando o que falou o Salgado, uso também essa função:

 

ASP
  1. <%
    Function LimpaLixo(input)
     
    Dim lixo
    Dim textoOK
     
    Lixo = array ( "'", "select" , "drop" , ";" , "--" , "insert" , "delete" , "xp_")
    TextoOK = input
     
    For i = 0 to uBound(lixo)
    TextoOK = replace( textoOK , lixo(i) , "")
    Next
     
    LimpaLixo = textoOK
     
    End Function
    %>

 

;)

Normalmente só uso o Replace das ' por duas, pois imagine no caso de um fórum ou outro tipo de cadastro, se o nome do usuáro for D'alves? Ou seu apelido por xp_zé? ele autométimanete terá os mesmos alterados de forma errônea.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Com a substituição da ' por duas não acessam, a não ser que tenha alguma outra falha.

 

Mas também não há problemas além daqueles que descrevi mais acima, no caso de ser preciso o uso das palavras.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Qual seria a melhor opção para evitar o erro?Proibir esse caractere? Substituir? Usar addnew,edit,update?

Compartilhar este post


Link para o post
Compartilhar em outros sites

substituir as aspas simples por 2 aspas com o replacefazendo somente isso já esta seguro contra caracteres.. o salgado ja disse tudo!abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

isso mesmo... so tratar as aspas que melhora tudo

 

o allanweb tinha perguntado a mesma coisa dias atras

 

http://www.imasters.com.br/forum/index.php...446&hl=caracter

Compartilhar este post


Link para o post
Compartilhar em outros sites

Uma regra simples para trabalho com Banco de Dados e entradas de usuário, nunca, nunca confie no que o usuário digita, sempre valide tudo.

 

Campo texto, replace nas aspas simples por duas aspas simples.

Campo Numérico, verifique se é numero realmente (IsNumeric).

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.