Foros del Web » Programando para Internet » PHP »

Warning: session_start() [function.session-start]: Cannot send session cookie

Estas en el tema de Warning: session_start() [function.session-start]: Cannot send session cookie en el foro de PHP en Foros del Web. Saludos el problema es que cuando me voy a loguear me genera lo siguiente y no me deja seguir Warning: session_start() [function.session-start]: Cannot send session ...
  #1 (permalink)  
Antiguo 22/03/2012, 16:35
Avatar de dontripi  
Fecha de Ingreso: enero-2006
Mensajes: 240
Antigüedad: 18 años, 3 meses
Puntos: 1
Warning: session_start() [function.session-start]: Cannot send session cookie

Saludos

el problema es que cuando me voy a loguear me genera lo siguiente y no me deja seguir


Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at C:\xampp\htdocs\soporte\conexion\conexion.inc.php: 1) in C:\xampp\htdocs\soporte\loginConfirm.php on line 13

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at C:\xampp\htdocs\soporte\conexion\conexion.inc.php: 1) in C:\xampp\htdocs\soporte\loginConfirm.php on line 13


este es el archivo loginconfirm.php

Código PHP:
<?php
include('conexion/conexion.inc.php');
$link=Conectarse();
$usuarioLogin=mysql_real_escape_string(strip_tags($_POST['usuarioLogin']));
$passwordLogin=mysql_real_escape_string(strip_tags($_POST["passwordLogin"]));
$passwd=hash("sha512",$passwordLogin);    
        
$query="SELECT * FROM tbl_user where user_name = '".$usuarioLogin."'and password = '".$passwd."';";    
        
//echo $query;
        
$resultado=mysql_query($query);        
        
$usuario=mysql_fetch_array($resultado);        
            if(
$usuario['PASSWORD']==$passwd)
            {
            
session_start();
            
$_SESSION['iniciosesion']=true;
            
//echo"Antesdelogin".$usuario['TIPO_USUARIO'];
            
$_SESSION["tipousuario"]=$usuario['TIPO_USUARIO'];
            
$_SESSION["identificacion"]=$usuario['USER_ID'];
//echo"VariabledeSesion".$_SESSION["tipousuario"];
            //echo"LoginExitoso...";
            
Header("Location:menu.php");            
            }
            else
            {
                
//echo"nocoincidelainformacionverifique";
                
Header("Location:index.php");
            }
        
mysql_close($link);?>

y el archivo conexion.inc.php es el siguiente:

Código PHP:
<?php
    
function Conectarse()
        {
        
            
$db_host="localhost";//Nombredelhostodireccion
            
$db_nombre="basedatos";//Nombredelabasededatos
            
$db_user="root";//Nombredeusuarioconpermisosparaaeccederalabd
            
$db_pass="password";//Contraseñadelusuario
            //Realizamosconexionllamadalink
            
$link mysql_connect ($db_host,$db_user,$db_pass) or die("ErrorConectandoALaBaseDeDatos");            
            
//Seleccionamoslabd            
            
mysql_select_db ($db_nombre$link) or die ("ErrorSeleccionandoLaBaseDeDatos");            
            
//Devolvemoslinkporqueporqueharafaltamasadelante,cuandoqueramoshacerconsultas            
            
return$link;
        
        }
?>
Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\soporte\conexion\conexion.inc.php: 1) in C:\xampp\htdocs\soporte\loginConfirm.php on line 20


lo extraño es que estoy migrando a el servidor de produccion, en el localhost todo me funciona ok, no se que pasa o que debo configurar en php.ini, por que no he cambiado nada unicamente el servidor.

por favor cualquier ayuda les agradezco.
  #2 (permalink)  
Antiguo 22/03/2012, 16:36
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Warning: session_start() [function.session-start]: Cannot send session coo

Lee lo siguiente:

http://www.forosdelweb.com/wiki/PHP:...lready_sent%3F

y

http://www.forosdelweb.com/wiki/PHP:...n_line_4%22%3F

Saludos.
  #3 (permalink)  
Antiguo 22/03/2012, 16:37
Avatar de informacionsys  
Fecha de Ingreso: mayo-2011
Ubicación: Bogota D.C
Mensajes: 793
Antigüedad: 13 años
Puntos: 76
Respuesta: Warning: session_start() [function.session-start]: Cannot send session coo

hola

ok sencillo , siempre debes iniciar session_start() en la primera linea del archivo
no puede haber ninguna salida antes de session_start();

prueba:

Código PHP:
Ver original
  1.  
  2.  
  3.  
  4.  
  5. include('conexion/conexion.inc.php');
  6. $link=Conectarse();
  7. $usuarioLogin=mysql_real_escape_string(strip_tags($_POST['usuarioLogin']));
  8. $passwordLogin=mysql_real_escape_string(strip_tags($_POST["passwordLogin"]));
  9. $passwd=hash("sha512",$passwordLogin);    
  10.         $query="SELECT * FROM tbl_user where user_name = '".$usuarioLogin."'and password = '".$passwd."';";    
  11.         //echo $query;
  12.         $resultado=mysql_query($query);        
  13.         $usuario=mysql_fetch_array($resultado);        
  14.             if($usuario['PASSWORD']==$passwd)
  15.             {
  16.            
  17.             $_SESSION['iniciosesion']=true;
  18.             //echo"Antesdelogin".$usuario['TIPO_USUARIO'];
  19.             $_SESSION["tipousuario"]=$usuario['TIPO_USUARIO'];
  20.             $_SESSION["identificacion"]=$usuario['USER_ID'];
  21. //echo"VariabledeSesion".$_SESSION["tipousuario"];
  22.             //echo"LoginExitoso...";
  23.             Header("Location:menu.php");            
  24.             }
  25.             else
  26.             {
  27.                 //echo"nocoincidelainformacionverifique";
  28.                 Header("Location:index.php");
  29.             }
  30.         mysql_close($link);
  #4 (permalink)  
Antiguo 23/03/2012, 09:35
Avatar de dontripi  
Fecha de Ingreso: enero-2006
Mensajes: 240
Antigüedad: 18 años, 3 meses
Puntos: 1
Respuesta: Warning: session_start() [function.session-start]: Cannot send session coo

Muchas Gracias por su colaboracion, bueno pues los dos primero warnings ya no me salen, elimine espacios y subi el session_start, ahora solo recibo el ultimo que dice:


Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\soporte\conexion\conexion.inc.php: 1) in C:\xampp\htdocs\soporte\loginConfirm.php on line 16

segun yo veo en la linea 15 del archivo loginConfirm.php esta lo siguiente.

Código PHP:
<?php
session_start
();
include(
'conexion/conexion.inc.php');
$link=Conectarse();
$usuarioLogin=mysql_real_escape_string(strip_tags($_POST['usuarioLogin']));
$passwordLogin=mysql_real_escape_string(strip_tags($_POST["passwordLogin"]));
$passwd=hash("sha512",$passwordLogin);
$query="SELECT * FROM tbl_user where user_name = '".$usuarioLogin."'and password = '".$passwd."';";
$resultado=mysql_query($query);
$usuario=mysql_fetch_array($resultado);
if(
$usuario['PASSWORD']==$passwd)
{
$_SESSION['iniciosesion']=true;
$_SESSION["tipousuario"]=$usuario['TIPO_USUARIO'];
$_SESSION["identificacion"]=$usuario['USER_ID'];
Header("Location:menu.php");//esta es la linea 16
}
else
{
Header("Location:index.php");
}
mysql_close($link);
?>
creo que es cuando intenta cargar el menu.php, voy a poner el codigo de este a ver si me pueden ayudar un poco, es que no veo el error, el session_start(); esta bien al comienzo, entonces no sabria que podria ser el erro.

Código PHP:
<?php
session_start
();
session_regenerate_id(true);
include 
'include/browser.php';
if(
$_SESSION['iniciosesion']!=true){
      
$_SESSION=array();
      
session_unset();
      
session_destroy();
      
$parametros_cookies session_get_cookie_params();
      
setcookie(session_name(),0,1,$parametros_cookies["path"]);
      
Header("Location: index.php");
}
$session $_SESSION['tipousuario'];
$idAsesor $_SESSION["identificacion"];
$browser = new Browser();
if( 
$browser->getBrowser() == Browser::BROWSER_IE ) {
    
$navegador 1;
    }
else{
$navegador=0;}



?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml2/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>    
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Soporte </title>
<meta name="Author" content="Stu Nicholls" />

<link rel="stylesheet" type="text/css" href="css/pro_dropdown_2.css" />
<link rel="stylesheet" href="css/prettyLoader.css" type="text/css"/>
<link rel="stylesheet" href="css/BlueDream.css" type="text/css"/>
<script src="js/jquery-1.6.2.min.js" type="text/javascript"><!--mce:0--><!--mce:0--></script>
<script src="js/stuHover.js" type="text/javascript"></script>
<script src="js/plugins/jquery.dataTables.js"></script>
<script src="js/plugins/jquery.validate.js" type="text/javascript"><!--mce:1--><!--mce:1--></script>
<script type="text/javascript" src="js/plugins/jquery.prettyLoader.js"></script>
<script type="text/javascript" charset="utf-8" src="media/js/ZeroClipboard.js"></script>
<script type="text/javascript" charset="utf-8" src="media/js/TableTools.js"></script>
<script type="text/javascript" src="js/plugins/jquery.prettyLoader.js"></script>
<script type="text/javascript" src="calendar/dhtmlgoodies_calendar.js?random=20060118"></script>
<style>
    
         @import "css/demo_page.css";
         @import "css/demo_table.css";
      @import "media/css/TableTools.css";    
        
         *{
        font-family:Arial, Helvetica, sans-serif;
        font-size:15px;       
     }
         
         #loader{

                position:absolute;/*agregamos una posición absoluta para que nos permita mover la capa en el espacio del navegador*/
                top:0;/*posicionamiento en Y */
                left:0;/*pocisionamiento en X*/
                z-index:9999; /* Le asignamos la pocisión más alta en el DOM */
                background-color:#ffffff; /* le asignamos un color de fondo */
                width:100%; /* maximo ancho de la pantalla */
                height:100%; /* maxima altura de la pantalla */
                display:block; /* mostramos el layer */ 
            }
    
</style>
<script>
$(document).ready(function(){
            
                $.prettyLoader();
            
            });

function cargaSolicitud()
    {
        $('#contenido').load('solicitudes.php');                
    }

function consultaSolicitud(navegador, session, idAsesor)
    {
        var nav = navegador;
                var ses = session;
                var id = idAsesor;
                $('#contenido').empty();
        
                        $('#contenido').load('consultaSolicitudes.php?navega='+nav+'&sesion='+ses+'&idase='+id);
                    
        }
function cargaCuenta()
    {
        $('#contenido').empty();
        $('#contenido').load('empresas.php');
    }
    
function consultaCuenta()
    {
        $('#contenido').empty();
        $('#contenido').load('editempresas.php');
    }
function cargaContactos()
        {
            $('#contenido').empty();
            $('#contenido').load('contactos.php');
        }
    
function consultaContactos()
        {
            $('#contenido').empty();
            $('#contenido').load('consContacto.php');
        }
function cargaeditor(sesion){
        
        var session = sesion;
        $('#contenido').empty();
        if (session == '1'){
            //$('#contenido').load('indexcon.php');
            location.href='conocimiento/index.php';
        }
        else{
            //$('#contenido').load('indexcon2.php');
            location.href='conocimiento/index2.php';
        }
        
    }    
    
</script>
</head>

<body>
<br>
<br>
<span class="preload1"></span>
<span class="preload2"></span>
<ul id="nav">
    <li class="tope"><a href="#nogo1" class="top_link"><span>Inicio</span></a></li>
    <li class="tope"><a href="#nogo2" id="products" class="top_link"><span class="down">Solicitudes</span></a>
        <ul class="sub">
            <li><a onclick="cargaSolicitud();">Nueva</a>                    
            </li>
            <li><a  <?php echo "onclick=\"consultaSolicitud($navegador, $session, $idAsesor)\" ";?> >Consultar</a>                    
            </li>            
        </ul>
    </li>
    <li class="tope"><a id="services" class="top_link"  <?php echo "onclick=\"cargaeditor($session)\" ";?> ><span >Base Conocimiento</span></a>
    </li>    
    <li class="tope"><a href="" id="shop" class="top_link"><span class="down">Cuentas</span></a>
        <ul class="sub">
        <?php if($session=='1'){?>    
                    <li><a onclick="cargaCuenta()">Nueva</a></li>
                    <?php }?>
            <li><a onclick="consultaCuenta()">Consultar</a></li>            
        </ul>
    </li>
        <li class="tope"><a href="" id="shop" class="top_link"><span class="down">Contactos</span></a>
        <ul class="sub">
        <?php if($session=='1'){?>    
                    <li><a onclick="cargaContactos()">Nuevo</a></li>
                    <?php }?>
            <li><a onclick="consultaContactos()">Consultar</a></li>            
        </ul>
    </li>
    <li class="tope"><a href="reportes.php" id="privacy" class="top_link"><span>Informes</span></a></li>
    <li class="tope"><a href="#nogo27" id="contacts" class="top_link"><span class="down">Administracion</span></a>
        <ul class="sub">
            <li><a href="#nogo28">Support</a></li>
            <li><a href="#nogo29" class="fly">Sales</a>
                <ul>
                    <li><a >USA</a></li>
                    <li><a href="#nogo31">Canadian</a></li>
                    <li><a href="#nogo32">South American</a></li>
                    <li><a href="#nogo33" class="fly">European</a>
                        <ul>
                            <li><a href="#nogo34" class="fly">British</a>
                                <ul>
                                    <li><a href="#nogo35">London</a></li>
                                    <li><a href="#nogo36">Liverpool</a></li>
                                    <li><a href="#nogo37">Glasgow</a></li>
                                    <li><a href="#nogo38" class="fly">Bristol</a>
                                        <ul>
                                            <li><a href="#nogo39">Redland</a></li>
                                            <li><a href="#nogo40">Hanham</a></li>
                                            <li><a href="#nogo41">Eastville</a></li>
                                        </ul>
                                    </li>
                                    <li><a href="#nogo42">Cardiff</a></li>
                                    <li><a href="#nogo43">Belfast</a></li>
                                </ul>
                            </li>
                            <li><a href="#nogo44">French</a></li>
                            <li><a href="#nogo45">German</a></li>
                            <li><a href="#nogo46">Spanish</a></li>
                        </ul>
                    </li>
                    <li><a href="#nogo47">Australian</a></li>
                    <li><a href="#nogo48">Asian</a></li>
                </ul>
            </li>
            <li><a href="#nogo49">Buying</a></li>
            <li><a href="#nogo50">Photographers</a></li>
            <li><a href="#nogo51">Stockist</a></li>
            <li><a href="#nogo52">General</a></li>
        </ul>
    </li>
    
</ul>

<div id="contenido">
<br />
<br />
</div>
</body>
</html>
Muchas Gracias por su colaboracion.
  #5 (permalink)  
Antiguo 23/03/2012, 09:57
Avatar de dontripi  
Fecha de Ingreso: enero-2006
Mensajes: 240
Antigüedad: 18 años, 3 meses
Puntos: 1
Respuesta: Warning: session_start() [function.session-start]: Cannot send session coo

Perdon me respondo gracias GatorV lo que ud decia es cierto era el tipo de codificacion, lo unico que tuve que hacer fue abrir los archivos que me estaban generando error con el bloc de notas, despues darle guardar como y en codificacion le cambie de UTF8 a ANSI y volvi a intentar y funciona de una, muchas gracias por sus respuestas, es bueno ir aprendiendo mas cositas.

Etiquetas: cookie, mysql, send, session, sql, warning, variables, usuarios
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:26.