peedrow!! 0 Denunciar post Postado Julho 4, 2009 Oi Pessoal, estou mudando do asp para o PHP e tentei criar na raça um sistema de login. Ele funciona direitinho verifica se o usuário existe, exibe mensagens de erro tudo direitinho. Só que na hora que eu vou colocar o header pra redirecionar pra página principal ele me gera o seguinte erro. Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\oakeducation\login.php:2) in C:\xampp\htdocs\oakeducation\login.php on line 49 já vi muuuitos desses por aqui, mas não consegui entender muito bem pois no meu caso ele deveria gravar a sessão e mandar tudo pra outra página Segue abaixo o código <?php ob_start(); require 'abreconexao.php'; /*SEGURANÇA DO SISTEMA DE LOGIN*/ /* passando o valor do post para váriaveis controladoras que irão ser usadas durante todo o script */ $login = $_POST['txtLogin']; $senha = $_POST['pswSenha']; /*Controle contra Injeção SQL*/ /*1° parte. Troca por Replaces*/ str_replace("'","",$login); str_replace("'","",$senha); str_replace("=","",$login); str_replace("=","",$senha); str_replace("SELECT","",$login); str_replace("SELECT","",$senha); str_replace("DELETE","",$login); str_replace("DELETE","",$senha); str_replace("UPDATE","",$login); str_replace("UPDATE","",$senha); str_replace("TRUNCADE","",$login); str_replace("TRUNCADE","",$senha); str_replace("DROP","",$login); str_replace("DROP","",$senha); str_replace("DISTINCT","",$login); str_replace("DISTINCT","",$senha); str_replace("Create","",$login); str_replace("Create","",$senha); str_replace("format()","",$login); str_replace("format()","",$senha); /*2° parte. Função para se adicionar as querys*/ function anti_sql_injection($string) { $string = get_magic_quotes_gpc() ? stripslashes($string) : $string; $string = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($string) : mysql_escape_string($string); return $string; } /*FIM DA SEGURANÇA DO SISTEMA DE LOGIN*/ ?> <?php /* Query SQL para recolhimento de dados para validação */ $sql= mysql_query("Select usuarios_id, login, senha from tbl_usuarios where login='".anti_sql_injection($login)."' and senha='".anti_sql_injection($senha)."'") or die("Erro ao logar, contate o suporte técnico"); $busca_login = mysql_num_rows($sql); /* Verificação se Existe este usuário no sistema */ if ($busca_login == 1) { $_SESSION['Nome'] = $login; header("location: principal.php"); $gatilho = 1; } else { echo "Login ou senha inválidos. <a href=index.php>Clique aqui para voltar.</a>"; //se a senha está incorreta mostra essa mensagem } require 'encerraconexao.php'; ?> Compartilhar este post Link para o post Compartilhar em outros sites
Henrique Barcelos 290 Denunciar post Postado Julho 4, 2009 Na linha 49 existe alguma saída de dados antes que o Header seja enviado... isso causa esse erro... ooooou... Limpe o cache do navegador e tente de novo Compartilhar este post Link para o post Compartilhar em outros sites
peedrow!! 0 Denunciar post Postado Julho 4, 2009 Na linha 49 existe alguma saída de dados antes que o Header seja enviado... isso causa esse erro... ooooou... Limpe o cache do navegador e tente de novo Beem limpei o cache e tudo, mas ainda tá gerando o erro T.T na linha 49 ele esta criando uma Session apenas isso, isso n seria saida de dados, neah?! Compartilhar este post Link para o post Compartilhar em outros sites
peedrow!! 0 Denunciar post Postado Julho 4, 2009 Pronto consegui resolver aki!!! Apenas apaguei uma linha em branco que ele indicava a linha 2 e resolveu ^^ esse eh um dos mlaes da programação, os erros bobos :P Compartilhar este post Link para o post Compartilhar em outros sites