Hola tengo un formulario php que logea un usuario. Todo funciona correctamente hasta ahí. Este llama a un script php que si el usuario redirige a este a otra página en la que tengo a traves de un include un modulo de seguridad, pero al cargar la página me da un error.
El error es el sigiente:
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at C:\AppServ\www\webIndagar\Catalogo.php:1) in C:\AppServ\www\webIndagar\Seguridad.php on line 2
AdolfoFito ----> muestra el echo $variable; de Seguridad.php.
Os pongo el Codigo del Formulario de logeo y el de las subsigiente paginas vinculadas con este logeo. No le encuentro solucion. Pues este mismo código funciona sin ningún error con otra página mas sencilla.
login.php
Código:
<?php if ($_GET['errorusuario']=="si"){
?>
<font color="red"><b>Datos incorrectos o <a href="registro.php"> Registrate</a></b></font>
<?php }else{
?>
Introduce tu nombre de usuario y contraseña
<?php }?>
<form action="autenficacion.php" method="POST">
<table border="0">
<tr>
<td>Nombre de usuario:</td>
<td><input name="usuario" size="25" value=""></td>
</tr>
<tr>
<td>Contraseña:</td>
<td><input name="contrasena" size="25" type="password"></td>
</tr>
<tr>
<td colspan="2" align="center"><input type="submit" value="Inicio de sesión"></td>
</tr>
</table>
</form>
autenficacion.php
Código:
<?
session_start();
if ($_POST['usuario']==$row_CNusuarios['NUsuario'] && md5($_POST['contrasena'])==$row_CNusuarios['ContrUsuario']){
$_SESSION['autenticado']=$_POST['usuario'];
header ('Location:Catalogo.php');
}else {
header ('location:login.php?errorusuario=si');
}
?>
Seguridad.php
Código:
<?php
session_start();
$variable=$_SESSION['autenticado'];
if (isset($variable)){
echo $variable;
}else{
echo "Hola que tal estamos...";
}
?>
Catalogo.php
Código:
<?php require_once('connections/webindagar.php');?>
<?php include ('funcion.php');?>
<?php include ('Seguridad.php');?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Web para Indagar</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<!-- res -->
<link rel="stylesheet" type="text/css" href="css/template.css" media="screen, print" />
</head>
<body>
<div id="imSite">
<div id="imHeader"></div>
<div id="imBody">
<div id="imMenuMain">
<div id="imMnMn">
<p><a href="index.html" title="Inicio">Inicio</a><a href="Catalogo.php" title="Catalogo" >Categorías</a> <a href="salir.php" title="desconectar" >Desconectar</a>
</div>
</div>
</div>
<div id="imContent">
<div id="imPage">
<div id="imIdeas">
</div>
<div id="contenido"><?php $var=muestraFrm(' ');?>
</div>
</div>
</div>
<div id="imFooter"><a href="#">HOME</a> | <a href="#">ABOUT US</a> | <a href="#">SERVICES</a> | <a href="#">PORTFOLIO</a> | <a href="#">NEWS & EVENTS</a> | <a href="#">SUPPORT</a> | <a href="#">CONTACTS</a><br>
Copyright © WebParaIndagar. Designed by @AAG</div>
</div>
</div>
</body>
</html>
En cambio si redirecciono a esta otra página este mismo codigo funciona correctamente.
aplicacion.php
Código:
<?php
include ('Seguridad.php');
?>
<html>
<head>
<title>Aplicación segura</title>
</head>
<body>
<h1>Ahora estás en una aplicación segura</h1>
<?php
echo $_SESSION['autenticado'];
?>
<br>
<br>
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
<br>
<br>
<br>
<a href="salir.php">Hacé click aquí para salir</a>
</body>
</html>
No se que hacer. Si alguno me da una idea se lo agradecere.
De todas formas seguire buscando.
Belcebu6001