Buenas noches me podrían ayudar porque me sale este error también les dejo el código... gracias
Warning: session_destroy() [function.session-destroy]: Trying to destroy uninitialized session in C:\AppServ\www\inventario\Inventario\conexion\login.php on line 34
Warning: Cannot modify header information - headers already sent by (output started at C:\AppServ\www\inventario\Inventario\conexion\login.php:34) in C:\AppServ\www\inventario\Inventario\conexion\login.php on line 35
<?php
$user=$_REQUEST["username"];
$pass=$_REQUEST["pass"];
//conexión a la base de datos.
$con=mysql_connect("localhost", "root", "1234");
$query="SELECT * FROM inventariodb.users
WHERE username='".$user."';";
$x=mysql_query($query);
@$user1=mysql_result($x, 0, 'username');
@$pass1=mysql_result($x, 0, 'pass');
@$rol=mysql_result($x,0,'rol');
mysql_close();
if($user==$user1 && $pass==$pass1 && $user!="" && $rol=="admin"){
session_start();
$_SESSION["ok"]=true;
$_SESSION["user"]=$user;
$_SESSION["admin"]=true;
header("Location:http://localhost/Inventario/paginas/admin/index admin.php");
exit;
}elseif($user==$user1 && $pass==$pass1 && $user!="" && $rol=="user"){
session_start();
$_SESSION["ok"]=true;
$_SESSION["user"]=$user;
header("Location:http://localhost/Inventario/paginas/index.php");
exit;
}else{
session_destroy();
header("Location:http://localhost/Inventario/paginas/Iniciar Sesion.php");
exit;
}
?>
Aqui esta diciendo que no se ha inicializado la sesion en php:
Warning: session_destroy() [function.session-destroy]: Trying to destroy uninitialized session in C:\AppServ\www\inventario\Inventario\conexion\login.php on line 34
Puedes tambien incluir aca el archivo php anterior, que llama a este php actual, y si este que posteaste es el primer php que carga el sitio entonces ese destruir sesion no tendria sentido.
Cita de: Graphixx en 3 Mayo 2014, 11:57 AM
Aqui esta diciendo que no se ha inicializado la sesion en php:
Warning: session_destroy() [function.session-destroy]: Trying to destroy uninitialized session in C:\AppServ\www\inventario\Inventario\conexion\login.php on line 34
Puedes tambien incluir aca el archivo php anterior, que llama a este php actual, y si este que posteaste es el primer php que carga el sitio entonces ese destruir sesion no tendria sentido.
hola estos son lo códigos de que manda a llamar:
Index admin.php
<?php
session_start();
if($_SESSION["ok"]==true && $_SESSION["admin"]==true){
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Sistema de Inventario</title>
<meta http-equiv="Content-Language" content="English" />
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link rel="stylesheet" type="text/css" href="../../css/style.css" media="screen" />
</head>
<body>
<div id="wrap">
<div id="header">
<h1>MEGATEC</h1>
<h2>Sistema de Inventario</h2>
</div>
<div id="top"> </div>
<div id="content">
<div class="left">
<h2><a href="#">Bienvenid@ al Sistema! Administrador </a><?php print "<font color='red'>".$_SESSION["user"]."</font>";?> <a href="../../conexion/cerrarsesion.php">[Cerrar Sesion]</a></h2>
<div class="articles">
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
</div>
<h2> </h2>
<div class="articles"></div>
</div>
<div class="right">
<h2>Que desea hacer?</h2>
<ul>
<li><a href="index admin.php">Home</a></li>
<li><a href="Ingresar Articulos.php">Ingresar Articulos</a></li>
<li><a href="Actualizar1.php">Actualizar y Borrar Registros</a></li>
<li><a href="Nueva Ubicacion.php">Crear Nueva Ubicacion</a></li>
<li><a href="Encargados de Equipo.php">Registrar Nuevo Encargado</a></li>
<li><a href="Eliminar Users.php">Actualizar Users</a></li>
<li><a href="Eliminar Encargados.php">Actualizar Encargados</a></li>
<li><a href="Eliminar Ubicaciones.php">Actualizar Ubicaciones</a></li>
<li><a href="Nuevo Usuario.php">Registrar Usuarios</a></li>
<li><a href="Reporte.php">Reportes</a></li>
<li></li>
<li></li>
</ul>
<h2> </h2>
</div>
<div style="clear: both;"> </div>
</div>
<div id="bottom"> </div>
<div id="footer"> Sistema de Inventario REST Inc ©
<a href="http://www.openwebdesign.org/"></a>
</div>
</div>
</body>
</html>
<?php
}else{
header("Location:http://localhost/Inventario/paginas/index.php");
exit;
}
?>
index.php
<?php
session_start();
if($_SESSION["ok"]==true){
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Sistema de Inventario</title>
<meta http-equiv="Content-Language" content="English" />
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link rel="stylesheet" type="text/css" href="../css/style.css" media="screen" />
</head>
<body>
<div id="wrap">
<div id="header">
<h1>MEGATEC</h1>
<h2>Sistema de Inventario</h2>
</div>
<div id="top"> </div>
<div id="content">
<div class="left">
<h2><a href="#">Bienvenid@ a nuestro Sistema de Inventario!</a> <?php print "<font color='red'>".$_SESSION["user"]."</font>";?> <a href="../conexion/cerrarsesion.php">[Cerrar Sesion]</a></h2>
<div class="articles">
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
</div>
<h2> </h2>
<div class="articles"></div>
</div>
<div class="right">
<h2>Que desea hacer?</h2>
<ul>
<li><a href="index.php">Home</a></li>
<li><a href="Ingresar Articulos.php">Ingresar Articulos</a></li>
<li>Reportes</li>
<li></li>
</ul>
<h2> </h2>
</div>
<div style="clear: both;"> </div>
</div>
<div id="bottom"> </div>
<div id="footer"> Sistema de Inventario REST Inc ©
<a href="http://www.openwebdesign.org/"></a>
</div>
</div>
</body>
</html>
<?php
}else{
header("Location:http://localhost/Inventario/paginas/Iniciar Sesion.php");
exit;
}
?>
iniciar sesión.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Iniciar Sesión</title>
<meta http-equiv="Content-Language" content="English" />
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link rel="stylesheet" type="text/css" href="../css/style.css" media="screen" />
<link rel="shortcut icon" href="../images/favicon.ico" type="image/x-icon">
<link rel="icon" href="../images/favicon.ico" type="image/x-icon">
</head>
<body>
<div id="wrap">
<div id="header">
<h1>MEGATEC</h1>
<h2>Sistema de Inventario Version Beta!</h2>
</div>
<div id="top"> </div>
<div id="content">
<div class="left">
<h2><a href="#">Iniciar Sesión</a></h2>
<div class="articles">
<p>Ingrese los datos de su usuario.</p>
<p> </p>
<center><form id="sesion" method="post" action="../conexion/login.php">
<table width="200" border="0" cellspacing="1">
<tr>
<td width="64">User:</td>
<td width="117"><label>
<input type="text" name="username" />
</label></td>
</tr>
<tr>
<td>Password:</td>
<td><label>
<input name="pass" type="password"/>
</label></td>
</tr>
</table>
<p>
<label>
<input type="submit" name="enviar" id="enviar" value="Iniciar Sesión" />
</label>
</p>
</form></center>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
</div>
<h2> </h2>
<div class="articles"></div>
</div>
<div class="right">
<h2>Que desea hacer?</h2>
<p> </p>
<ul>
<li>Home</li>
<li>Ingresar Articulos</li>
<li>Actualizar y Borrar Registros</li>
<li>Crear Nueva Ubicacion</li>
<li>Registrar Nuevo Encargado</li>
<li>Actualizar Users</li>
<li>Actualizar Encargados</li>
<li>Actualizar Ubicaciones</li>
<li>Registrar Usuarios</li>
<li>Reportes</li>
<li></li>
<li></li>
<li></li>
</ul>
<h2> </h2>
</div>
<div style="clear: both;"> </div>
</div>
<div id="bottom"> </div>
<div id="footer"> Sistema de Inventario REST Inc ©
<a href="http://www.openwebdesign.org/"></a>
</div>
</div>
</body>
</html>
espero que me puedan ayudar... gracia!!!!!!!
Tienes un error cadena muy simple...
No se está cumpliendo la condición del primer if que es donde se inicia la sesión, pero se cumple la condición el se, donde se destruye la sesión que nunca se inició, eso te genera el primer warning que se imprime en el Buffer de salida, luego se intenta enviar el header, pero no puede porque hay datos enviados en el Buffer de salida