Kelven 1 Denunciar post Postado Janeiro 14, 2015 Pessoal estou com um problema, fiz um script para proteção contra injeção sql só q está dando um erro, esse erro olha Fatal error: Cannot redeclare protecao() (previously declared in C:\Inetpub\vhosts\studiopandora.com.br\httpdocs\cliente\set_cookie.php:10) inC:\Inetpub\vhosts\studiopandora.com.br\httpdocs\cliente\set_cookie.php on line 41 Olha o código abaixo: <?php //verifica se a variavel foi inciada ou setada. if (isset($_COOKIE['nome_usuario'])) { $nome_usuario= (string)mysql_real_escape_string($_COOKIE['nome_usuario'], $con); function protecao($nome_usuario){ $nome_usuario = str_replace(" or ", "", $nome_usuario); $nome_usuario = str_replace("select ", "", $nome_usuario); $nome_usuario = str_replace("delete ", "", $nome_usuario); $nome_usuario = str_replace("create ", "", $nome_usuario); $nome_usuario = str_replace("drop ", "", $nome_usuario); $nome_usuario = str_replace("update ", "", $nome_usuario); $nome_usuario = str_replace("drop table", "", $nome_usuario); $nome_usuario = str_replace("show table", "", $nome_usuario); $nome_usuario = str_replace("applet", "", $nome_usuario); $nome_usuario = str_replace("object", "", $nome_usuario); $nome_usuario = str_replace("'", "", $nome_usuario); $nome_usuario = str_replace("#", "", $nome_usuario); $nome_usuario = str_replace("=", "", $nome_usuario); $nome_usuario = str_replace("--", "", $nome_usuario); $nome_usuario = str_replace("-", "", $nome_usuario); $nome_usuario = str_replace(";", "", $nome_usuario); $nome_usuario = str_replace("*", "", $nome_usuario); $nome_usuario = strip_tags($nome_usuario); return $nome_usuario; } } if (isset($_COOKIE['senha_usuario'])) { $senha_usuario= (string)mysql_real_escape_string($_COOKIE['senha_usuario'], $con); function protecao($senha_usuario){ $senha_usuario = str_replace(" or ", "", $senha_usuario); $senha_usuario = str_replace("select ", "", $senha_usuario); $senha_usuario = str_replace("delete ", "", $senha_usuario); $senha_usuario = str_replace("create ", "", $senha_usuario); $senha_usuario = str_replace("drop ", "", $senha_usuario); $senha_usuario = str_replace("update ", "", $senha_usuario); $senha_usuario = str_replace("drop table", "", $senha_usuario); $senha_usuario = str_replace("show table", "", $senha_usuario); $senha_usuario = str_replace("applet", "", $senha_usuario); $senha_usuario = str_replace("object", "", $senha_usuario); $senha_usuario = str_replace("'", "", $senha_usuario); $senha_usuario = str_replace("#", "", $senha_usuario); $senha_usuario = str_replace("=", "", $senha_usuario); $senha_usuario = str_replace("--", "", $senha_usuario); $senha_usuario = str_replace("-", "", $senha_usuario); $senha_usuario = str_replace(";", "", $senha_usuario); $senha_usuario = str_replace("*", "", $senha_usuario); $senha_usuario = strip_tags($senha_usuario); return $senha_usuario; } } if (!(empty($nome_usuario) or empty($senha_usuario))) { include ("../adm/conection/conection.php"); $login_final = protecao($nome_usuario); $senha_final = protecao2($senha_usuario); $sql= "SELECT * FROM clientes WHERE login = '$login_final' and senha = '$senha_final'"; $query= mysql_query($sql); $linhas= mysql_num_rows($query); if($linhas == 0) { setcookie("nome_usuario"); setcookie("senha_usuario"); header("location:../"); exit; } } else { header("location:../"); exit; } ?> O que eu posso fazer para estar resolvendo esse problema? Compartilhar este post Link para o post Compartilhar em outros sites
ESerra 744 Denunciar post Postado Janeiro 14, 2015 Pra que você está duplicando a função? Se ela é exatamente a mesma você não precisa dela duas vezes. Outro detalhe: $login_final = protecao($nome_usuario); $senha_final = protecao2($senha_usuario); Ai você está chamando a função com dois nomes diferentes. Compartilhar este post Link para o post Compartilhar em outros sites