Os agradezco de antemano vuestro tiempo
Estoy realizando una web donde hay 5 apartados abiertos al publico y un apartado solo para usuarios registrados.
La web la estoy haciendo en PHP, he creado varios div.
Div de Botones(link)
Div de Contenido (donde en funcion del link selecionado muestro la pagina por include)
Div Login Usuario.
por separado la pagina de usuario Login, me funciona.
los apartados de contacto, noticias, quienes somos, etc, tambien funcionan bien.
El problema lo tengo en el div de Login ya que me aparece el siguiente mensaje de error.
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /usr/home/midominio/main.php:12) in /usr/home/midominio/acceso.php on line 2
Warning: Cannot modify header information - headers already sent by (output started at /usr/home/midominio/main.php:12) in /usr/home/midominio/acceso.php on line 45
Como comento si las paginas las utilizo por separado me funcionan perfectamente, pero no se porque al incluir en main, me aparece este error.
Codigo Main.php
Código PHP:
<?php
$link=$_GET['link'];
?>
<html>
<head>
<title>Sol's España</title>
<LINK href="../kapi.css" type=text/css rel=stylesheet>
<style type="text/css">
<!--
#DivUsr {
position:absolute;
left:853px;
top:29px;
width:150px;
height:345px;
z-index:4;
}
-->
</style>
</head>
<body>
<div id="contingut" style="position:absolute; width:650px; height:420px; z-index:1; left: 155px; top: 144px; visibility: visible; border: 1px none #000000;">
<?php
if (!isset($link)) $link=2;
if ($link==1) include ("../quienessomos.html");
if ($link==2) include ("noticias.php");
if ($link==3) include ("localizacion.html");
if ($link==4) include ("contacto.php");
if ($link==5) include ("catalogo.php");
if ($link==6) include ("tienda.php");
?>
</div>
<div id="navegacio" style="position:absolute; width:550px; height:80px; z-index:1; left: 156px; top: 59px; visibility: visible; border: 1px none #000000;">
</div>
<div id="DivUsr">
<?php
include("acceso.php");
?>
</div>
<table width="1006" border="1">
<tr>
<td width="287"><a href="../sols/main.php?link=1">Quienes Somos </a></td>
<td width="150"><a href="../sols/main.php?link=2">Noticias</a></td>
<td width="220"><a href="../sols/main.php?link=3">Localizacion</a></td>
<td width="167"><a href="../sols/main.php?link=4">Contacto</a></td>
<td width="148"><p><a href="../sols/main.php?link=5">Catalogo</a></p> </td>
</tr>
</table>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
</body>
</html>
Código PHP:
<?php
session_start();
include('acceso_db.php');
if(empty($_SESSION['usuario_nombre'])) { // comprobamos que las variables de sesión estén vacías
if(isset($_POST['enviar'])) { // comprobamos que se hayan enviado los datos del formulario
// comprobamos que los campos usuarios_nombre y usuario_clave no estén vacíos
if(empty($_POST['usuario_nombre']) || empty($_POST['usuario_clave'])) {
echo "El usuario o la contraseña no han sido ingresados. <a href='javascript:history.back();'>Reintentar</a>";
}else {
// "limpiamos" los campos del formulario de posibles códigos maliciosos
$usuario_nombre = mysql_real_escape_string($_POST['usuario_nombre']);
$usuario_clave = mysql_real_escape_string($_POST['usuario_clave']);
//$usuario_clave = md5($usuario_clave);
// comprobamos que los datos ingresados en el formulario coincidan con los de la BD
$sql = mysql_query("SELECT ID, usuario, pass, Grupo, Codcli FROM Usuarios WHERE usuario ='".$usuario_nombre."' AND pass='".$usuario_clave."'");
if($row = mysql_fetch_array($sql)) {
$_SESSION['usuario_id'] = $row['ID']; // creamos la sesion "usuario_id" y le asignamos como valor el campo usuario_id
$_SESSION['usuario_nombre'] = $row["usuario"]; // creamos la sesion "usuario_nombre" y le asignamos como valor el campo usuario_nombre
?>
<script type="text/javascript">
var pagina = "paginarestringida.php" <!-- Redirigimos al index o la página que se desee -->
function redireccionar() {
location.href = pagina
}
setTimeout ("redireccionar()", 1000);
</script>
<?php
}else {
echo "Los datos ingresados no están registrados en nuestra BD. <a href='javascript:history.back();'>Reintentar</a>";
}
}
}else {
?>
<form action="<?=$_SERVER['PHP_SELF']?>" method="post">
<label>Usuario:</label><br />
<input type="text" name="usuario_nombre" /><br />
<label>Contraseña:</label><br />
<input type="password" name="usuario_clave" /><br />
<input type="submit" name="enviar" value="Ok" />
</form>
<?php
}
}else {
// si las variables de sesión no están vacías redirigimos al index (o a la página que se desee)
header("Location: index.php");
}
?>
gracias