Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/11/2009, 20:01
Avatar de jackson666
jackson666
 
Fecha de Ingreso: noviembre-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 1.971
Antigüedad: 14 años, 5 meses
Puntos: 65
Problema con Sesiones

Hola, antes que nada, que tal a todos, como estan?
Bueno les comento que estoy desarrollando una web, con un sistema de logueo de clientes, en donde se hara pedido de mercaderia.
Tengo un problema hace ya varios dias y es el siguiente:
Tengo una pagina en donde se loguean los usuarios, con un formulario tipico de usuario y contraseña.
La accion de ese formulario, es un php en donde se evaluan todos los datos ingresados y si todo anda bien, inicio la sesion con session_start(); y defino la variable de sesion como se ve en el siguiente codigo:
este es (registrado.php)

Código PHP:
<?php
$user
=$_POST['usuario'];
$psw=$_POST['psw'];
if(empty(
$user)){
    echo 
"<script languaje='javascript'>alert('Completar campo Usuario');</script>";
    echo 
"<script languaje='javascript'>location.href='registrarse.php';</script>";
}else if(empty(
$psw)){
    echo 
"<script languaje='javascript'>alert('Ingresar Contraseña');</script>";
    echo 
"<script languaje='javascript'>location.href='registrarse.php';</script>";
}else{
include(
"conexion.php");
$sql="select * from clientes where usuario='$user' and psw='$psw';";
$consulta=mysql_query($sql,$conectar);
$correcto=mysql_num_rows($consulta);
if(
$correcto==1){
    
session_start();
    
$_SESSION['dato']="x";
    
setCookie("usu",$user);
    include(
"log/accesos.php");
    
header("Location:carrito.php");
}else{
    echo 
"<script languaje='javascript'>alert('Nombre de Usuario o Clave incorrectos');</script>";
    echo 
"<script languaje='javascript'>location.href='registrarse.php';</script>";
}
}
?>
Y luego, redirecciono a "carrito.php", que SOLO tiene el siguiente codigo:

Código PHP:
<?php
session_start
();
if(isset(
$_SESSION['dato']))
{
?>
<html>
<head>
<title>Los 2 Fiambreros</title>
</head>
<body>
Prueba
</body>
</html>
<?php
}else{
echo 
"<script languaje='javascript'>alert('Debe Registrarse');</script>";
echo 
"<script languaje='javascript'>location.href='registrarse.php';</script>";
}
?>
Lo curioso es lo siguiente: cuando yo habia empezado a hacer las paginas, hice una copia por las dudas y segui trabajando. Le segui agregando cosas en "carrito.php", y en un momento, probe y me empezo a salir este error:

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at C:\xampp\htdocs\hernan\algo\carrito.php:1) in C:\xampp\htdocs\hernan\algo\carrito.php on line 2

No le encontre la vuelta y se me ocurrio reemplazar ese archivo (carrito.php), por el que tenia guardado en la copia.
En resumen: me doy cuenta de que el archivo que tenia en copia, no tiene este error. Pero basta con que le modifique una linea, un espacio, cualquier cosa que haga y guarde los cambios, para que empiece a salir el error.

Alguien tiene idea de que puede estar pasando? Lei en este foro y en varios otros que no puede haber espacios ni nada antes del session_start(). Me fije bien y no tengo en ningun lado nada.. la verdad no se que es lo que estoy haciendo mal

Si alguien sabe, le pido que me ayude, gracias!