Ir para conteúdo

POWERED BY:

Arquivado

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

Pitag346

Erro Simples - Sistema de Login PHP

Recommended Posts

Olá Amigos, Estou com um erro simples mais que não consigo arruma-lo !

o Seguinte Erro: (segue o Print abaixo)

cWnpqKR.jpg

Segue Abaixo o Código da pagina: verifica_usuario.php

<?php

session_start();  // Inicia a session

include "includes/config.php";

@$usuario = $_POST['usuario'];
@$senha = $_POST['senha'];

$senhacrip = md5($senha);

if((!$usuario) || (!$senha)){

	echo "<script>alert('Por favor, todos campos devem ser preenchidos!');</script> <br /><br />";
	include "formulario_login.html";

}
else{

	$senhacrip = md5($senha);

	$sql = mysql_query("SELECT * FROM usuarios WHERE usuario='{$usuario}' AND senha='{$senhacrip}' AND ativado='1'");
	$login_check = mysql_num_rows($sql);

	if($login_check > 0){

		while($row = mysql_fetch_array($sql)){

			foreach( $row AS $key => $val ){

				$$key = stripslashes( $val );

			}

			$_SESSION['usuario_id'] = $usuario_id;
			$_SESSION['nome'] = $nome;
			$_SESSION['sobrenome'] = $sobrenome;
			$_SESSION['email'] = $email;
			$_SESSION['nivel_usuario'] = $nivel_usuario;
		
			mysql_query("UPDATE usuarios SET data_ultimo_login = now() WHERE usuario_id ='{$usuario_id}'");

			header("Location: area_restrita.php");

		}

	}
	else{

		echo "<script>alert('Voce nao pode logar-se! Este usuario e/ou senha nao sao validos!'); </script><br />
			<script>alert('Por favor tente novamente!'); </script><br />";

		include "formulario_login.html";

	}
}

?>

 

 

Caso Precisem do código da config.php, so pedirem !

Muito Obrigado ! Dez de Ja !

Compartilhar este post


Link para o post
Compartilhar em outros sites

O erro explica que tem alguma informação sendo enviada para tela antes de mudar o header , qualquer caracter antes de "<?php" e depois de "?>" geraria esse erro... ou um "echo", "print", "var_dump" ou "print_r", também ocasionaria o erro em questão não está necessariamente na página "verifica_usuario.php"

 

A solução do Evandro evita você deixar um carácter depois do "?>" é comum não fechar a tag php em arquivos de include exatamente para evitar esse tipo de erro.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Antes de session_start(); adicione ob_start();

 

Esse erro é que o arquivo não está conseguindo modificar o header para redirecionamento...

Compartilhar este post


Link para o post
Compartilhar em outros sites

o erro está no config.php

 

tem algum html dentro dele

 

 

 

 

ps: não tire o session_start. substitua-o por

 

if ( !isset( $_SESSION ) ) session_start();

 

vai evitar alguns problemas.

 

 

ahh, veja esta

 

http://blog.thiagobelem.net/resolvendo-o-problema-de-headers-already-sent/

Compartilhar este post


Link para o post
Compartilhar em outros sites

Falou o cara que é dono da Razão ... cara essa pode ser uma solução, mas fóruns são feitos para se abrir a mente e sair do nível da mediocridade .... pode se usar uma solução, ou entender e resolver um problema ... eu aposto que tem pelo menos 1.000 maneiras de resolver esse mesmo problema.

 

Bem pra mim o erro diz que tem informação sendo enviada antes da alteração do header ele passar o header pra primeira linha de código também funcionaria...

 

E ainda acredito que o ob_start(); seja uma gambiarra,,, segurar o buffer pra evitar esse tipo de erro que pode ser resolvido com um pouco de cuidado acredito que possa prejudicar o desempenho dependendo do sistema.

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.