alguém sabe como resilver este problemas? segue abaixo o código!
esta dando o seguinte erro!
Warning: Cannot send session cache limiter - headers already sent (output started at /var/www/html/portalf/portalf/admsis.php:2) in /var/www/html/portalf/verifica_sessao.php on line 2
você não efetuou Login!
login.php
[quote]
<?php
ob_start();
include "_con.php";
include "_funcoes.php";
$sql = "SELECT codigo, apelido,senha,admsis FROM usuarios ";
$sql = $sql . "WHERE apelido = '" . strtoupper($_POST['txtApelido']) . "' ";
$sql = $sql . "AND senha = '" . Cript($_POST['txtSenha']) . "'";
$result = pg_query($sql) or die ("Query inv�ida: " . pg_error());
if (pg_num_rows($result) == 0) {
echo "Usu�io " . $_POST['txtApelido'] . " N� validado!";
}else{
$consulta = pg_fetch_array($result);
if ($consulta['admsis'] == 1 ) {
//inicializa sessão
session_start();
$_SESSION['nome_usuario'] = $_POST['txtApelido'];
$_SESSION['senha_usuario'] = $_POST['txtSenha'];
header("location: portalf/admsis.php");
}else{
header("location: portalf/ususis.php");
}
}
pg_close($con) or die ("Query inv�ida: " . pg_error());
ob_end_flush();
ob_end_clean();
?>
[/quote]
verifica_sessão.php
[quote]
<?php
//inicializa sessão
session_start();
if(isSet($_SESSION['nome_usuario']))
$nome_usuario = $_SESSION["nome_usuario"];
if(isSet($_SESSION['senha_usuario']))
$senha_usuario = $_SESSION['senha_usuario'];
if(!(empty($nome_usuario) or empty($senha_usuario)))
{
include("../_con.php");
$sql ="SELECT * FROM usuarios WHERE apelido='$nome_usuario'";
$resultado = pg_query($sql);
if(pg_num_rows($resultado)==1)
{
if($senha_usuario != pg_result($resultado,0,"senha"))
{
unset ($_SESSION['nome_usuario']);
unset ($_SESSION['senha_usuario']);
echo "você não efetuou o login!";
exit;
}
}
else
{
unset ($_SESSION['nome_usuario']);
unset ($_SESSION['senha_usuario']);
echo "você efetuou o login!";
exit;
}
}
else
{
echo "você não efetuou Login!";
exit;
}
pg_close($con);
?>
[/quote][quote][/quote][QUOTE]
Problemas Com Validação De Sessão
Started By idosreisjunior, 11/02/2005, 09:18
7 replies to this topic
#1
Posted 11/02/2005, 09:18
#2
Posted 11/02/2005, 09:33
em todas as paginas tem que ter session_start() e também nao adianta colocar ob_start() se antes do <?php tem algum espaço em branco, linha ou HTML. verifica isso, só pode ser algum espaço em branco antes do <?php
#3
Posted 11/02/2005, 09:47
É verdade, tem que ter essa função no começo de qualquer script.
<?php
session_start();
?>
Outros códigos vao aqui!
<?php
session_start();
?>
Outros códigos vao aqui!
Edição feita por: Web Developer, 11/02/2005, 09:50.
PHP não é coisa pra muleque!
#4
Posted 11/02/2005, 13:32
aproveitando o topico, nem é segura armazenar uma senha em sessão é? tipo e se eu encriptar pra md5?
#5
Posted 11/02/2005, 13:55
sessao é seguro, pois os arquivos de sessao ficam no server, fora da arvore web.
#6
Posted 11/02/2005, 14:31
Encriptar em md5() fará com que você não tenha mais como resgatar a palavra original, se você quiser passar por parâmetro GET tudo bem, masnão grave no banco formatado
PHP não é coisa pra muleque!
#7
Posted 11/02/2005, 15:14
ah sim, é só a senha que eu queria, porque elas ficam encriptadas no banco de dados, então eu não vo precisa recupera elas memo, hehe
ty galera
ty galera
#8
Posted 11/02/2005, 15:17
se vc ciptrografa com base64_encode() vc pode desicptrografar com base64_decode()
mais nem precisa SESSION e 100% segura fica no server...
mais nem precisa SESSION e 100% segura fica no server...
1 user(s) are reading this topic
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)