Php addslashes

Publicado em 19 de Apr 2013.

Olá galera, faz tempo que não atualizo o blog, hoje irei falar sobre addslashes, esse semana precisa realizar um tratamento para aspas, e tinha me esquecido dessa função.

Legal mas como fazer o tratamento para aspas, bom vamos utilizar o addslashes.

O que é?

Essa função nativa do PHP, retorna um string com as barras invertidas antes de caracteres que precisam ser escapados para um query de banco, etc..

Ou seja ele colocará um tratamento no texto que precisa ser utilizando para inserir no banco, temos a seguinte situação quando precisamos realizar um login no banco de dados. Ele também é utilizando como uma das alternativas para segurança do SQL Injection.

E quais o caracteres tratados?

O addslashes realiza tratamento para os seguintes caracteres spas simples ('), aspas duplas ("), barra invertida (\) e NUL (o byte NULL).

Exemplo

Quando precisamos inserir no banco por exemplo a palavra o'relly, você precisa realizar um tratamento para que tenha problemas futuramente, a maioria dos banco adiciona uma barra \, isso apenas server adicionar no banco de dados a \ não será mostrada na exibição.Tendo a diretiva do PHP magic_quotes_sybase em on fará com que ' seja escapada com outra '.

A diretiva do PHP magic_quotes_gpc é on por padrão, e ela essencialmente executa addslashes() para todos dados de GET, POST e COOKIE. Não use addslashes() em strings que já foram escapadas com magic_quotes_gpc já que você acabara escapando duas vezes. A função get_magic_quotes_gpc() pode dar uma mão para conferir isto.

Exemplo prático

<?php

    $texto = "Leia o livros o'relly são muito bons";

    // Mostra: Leia o livros o\'relly são muito bons
    echo addslashes($texto);

?>