Jump to content

[PHP] Escape "automático" de strings para evitar injecções SQL


Battousai
 Share

Recommended Posts

function escape( $v ) {

return is_array( $v ) ? array_map( 'escape', $v ) : mysql_real_escape_string( $v );

}

$_POST = escape( $_POST );

$_GET = escape( $_GET );

$_COOKIE = escape( $_COOKIE );

Modo de uso:

Incluir o código acima nas páginas que lidem com formulários ou em páginas susceptíveis a injecção de código ou simplesmente num include global (por exemplo depois da conexão à BD).

Depois do include já não têm que se preocupar mais com "escapar" dados externos ao servidor 😄 .

Link to comment
Share on other sites

Realço que isso só vai funcionar depois de teres uma ligação ao MySQL, já que ele vai buscar info ao MySQLd.

Não peças ajuda por PM! A tua dúvida vai ter menos atenção do que se for postada na secção correcta do fórum!

Link to comment
Share on other sites

function db_entry_check($input) {

if(get_magic_quotes_gpc()) {
            if(ini_get('magic_quotes_sybase')) {
                $output        = str_replace("''", "'", $input);
            } else {
                $output        = stripslashes($input);
            }
        } else {
            $output        = $input;
        }

$output = mysql_real_escape_string($output);
return $output;
exit;

}

Aqui fica o código que normalmente uso para prevenir SQL Injections, também requer uma ligação a BD.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.