Estou com dificuldades em um sistema de login/senha usando session. Achei que estava funcionando mas o que estava acontecendo é que ele não estava filtrando os dados e direcionando qualquer login/senha para a área interna.
Refiz tudo, tentando não cometer nenhum erro, mas como sou iniciante, sempre tem algo que foge do meu entendimento.
Agradeço a força da galera.
A mensagem de erro que está dando é a seguinte:
Warning: session_start(): Cannot send session cookie - headers already sent by (output started at /home/muralcultural/www/hospedagem/michi_dojo/login_cadastro_aluno_session.php:13) in /home/muralcultural/www/hospedagem/michi_dojo/login_cadastro_aluno_session.php on line 39
Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /home/muralcultural/www/hospedagem/michi_dojo/login_cadastro_aluno_session.php:13) in /home/muralcultural/www/hospedagem/michi_dojo/login_cadastro_aluno_session.php on line 39
Warning: Cannot modify header information - headers already sent by (output started at /home/muralcultural/www/hospedagem/michi_dojo/login_cadastro_aluno_session.php:13) in /home/muralcultural/www/hospedagem/michi_dojo/login_cadastro_aluno_session.php on line 43
Eu cadastro os alunos com a página cadastro_aluno.php:
<html>
<head>
<title>Cadastramento do aluno</title>
</head>
<body>
<form name="form1" method="post" action="cadastro_aluno_resultado.php">
<p> login_aluno :
<input name="login_aluno" type="text" id="login_aluno" size="10" maxlength="30">
</p>
<p> senha_aluno :
<input name="senha_aluno" type="text" id="senha_aluno" size="10" maxlength="30">
</p>
<p>
<input type="submit" name="Submit" value="Enviar">
</p>
</form>
</body>
</html>
Verifico se o banco de dados registrou o aluno em cadastro_aluno_resultado.php (sempre aparece os cadastrados):
<html>
<head>
<title>Documento sem título</title>
</head>
<body>
<?
$con = mysql_connect("mysql.meudominio.com.br", "meuusername", "minhasenha");
mysql_select_db("meubancodedados", $con);
mysql_query("INSERT INTO aluno VALUES ('$login_aluno', '$senha_aluno')") or die ("Não foi possível fazer a gravação!");
echo "Registro efetuado com sucesso!<br>";
echo "<a href=\"cadastro_aluno.php\">voltar</a>";
?>
</body>
</html>
Minha página principal é frame_principal.php, aqui eu tenho dois campos de formulário para inserir o login e a senha e, enviar essas variáveis para a página que verificará se estes estão cadastrados:
<html>
<head>
<title>index</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript" type="text/JavaScript">
<!--
function MM_reloadPage(init) { //reloads the window if Nav4 resized
if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);
//-->
</script>
<link href="muralcultural_teste_ycom.css" rel="stylesheet" type="text/css">
<LINK REL="SHORTCUT ICON" href="pip.gif">
</head>
<body background="graficos/01_background_morihei.jpg" bgproperties="fixed">
INFORMAÇÕES DO SITE
<div id="Layer8" style="position:absolute; left:647px; top:329px; width:113px; height:80px; z-index:9">
<form name="form2" method="post" action="login_cadastro_aluno_session.php">
<div align="center">
<p class="verdana_vermelho_9_bold"><span class="verdana_az_esc_9_bold">*
ÁREA EXCLUSIVA *<br>
Alunos Michi Dojo: <br>
</span><span class="verdana_preta_9_normal">LOGIN:<br>
</span>
<input name="login_aluno" type="text" id="login_aluno" size="10" maxlength="30">
<br>
<span class="verdana_preta_9_normal">SENHA:<br>
</span>
<input name="senha_aluno" type="password" id="senha_aluno" size="10" maxlength="30">
<br>
<input name="enviar_senha2" type="submit" id="enviar_senha2" value="Enviar">
</p>
</div>
</form>
</div></td>
</tr>
</table></body>
</html>
Página que verificará as variáveis e criará as variáveis super globais de sessão, login_cadastro_aluno_sessao.php:
<html>
<head>
<title>Login cadastro</title>
</head>
<body>
<?
$login_aluno = $_POST["login_aluno"];
$senha_aluno = $_POST["senha_aluno"];
// acesso ao banco de dados
include "conecta_mysql.php";
$resultado = mysql_query("SELECT * FROM aluno where login_aluno='$login_aluno' and senha_aluno='$senha_aluno'");
$linhas = mysql_num_rows($resultado);
if($linhas == 0) // testa se a consulta retornou algum registro
{
echo "<html><body>";
echo "<p align=\"center\">Usuário não encontrado!</p>";
echo "<p align=\"center\"><a href=\"frame_principal_novo_session.php\">Voltar</a></p>";
echo "</body></html>";
}
else {
if ($senha_aluno != mysql_result($resultado, 0, "senha_aluno")) // confere a senha
{
echo "<html><body>";
echo "<p align=\"center\">A senha está incorreta!</p>";
echo "<p align=\"center\"><a href=\"frame_principal_novo_session.php\">Voltar</a></p>";
echo "</body></html>";
}
else // usuário e senhas corretos. Vamos criar os cookies
{
session_start();
$_SESSION["login2"] = $login_aluno;
$_SESSION["senha2"] = $senha_aluno;
// direciona para a página inicial dos usuários cadastrados
header ("Location: frame_principal_novo_interno.php");
}
}
?>
</body>
</html>
Página de validação da sessão, valida_sessao.php
<?
session_start();
if(IsSet($_SESSION["login2"]))
$login_aluno = $_SESSION["login2"];
if(IsSet($_SESSION["senha2"]))
$senha_aluno = $_SESSION["senha2"];
if(!(empty($login_aluno) OR empty($senha_aluno)))
{
include "conecta_mysql.php";
$resultado = mysql_query("SELECT * FROM aluno WHERE login_aluno='login_aluno'");
if(mysql_num_rows($resultado)==1)
{
if($senha_aluno != mysql_result($resultado,0,"senha_aluno"))
{
unset ($_SESSION['login2']);
unset ($_SESSION['senha2']);
echo "Voce não efetuou o LOGIN!";
exit;
}
}
else
{
unset ($_SESSION['login2']);
unset ($_SESSION['senha2']);
echo "Voce não efetuou o LOGIN!";
exit;
}
}
else
{
echo "Você não efetuou o LOGIN!";
exit;
}
mysql_close($con);
?>
Página interna do site, com o include de validação de sessão, frame_principal_novo_interno.php
<?
include "valida_sessao.php";
?>
<html>
<head>
<title>index</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript" type="text/JavaScript">
<!--
function MM_reloadPage(init) { //reloads the window if Nav4 resized
if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);
//-->
</script>
<link href="muralcultural_teste_ycom.css" rel="stylesheet" type="text/css">
</head>
<p><a href="logout.php">LOGOUT</a></p>
<body background="graficos/01_background_morihei.jpg" bgproperties="fixed">
INFORMAÇÕES DO SITE
</td>
</tr>
</table></body>
</html>
Valeu pessoal,
FS











