Foros del Web » Programando para Internet » PHP »

Problema con SESSION_START ();

Estas en el tema de Problema con SESSION_START (); en el foro de PHP en Foros del Web. tengo este problema con el session start.. en mi plantilla de contacto me da este error Warning: session_start() [function.session-start]: Cannot send session cache limiter - ...
  #1 (permalink)  
Antiguo 10/12/2007, 20:37
 
Fecha de Ingreso: junio-2007
Mensajes: 19
Antigüedad: 12 años, 7 meses
Puntos: 0
Problema con SESSION_START ();

tengo este problema con el session start.. en mi plantilla de contacto me da este error

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at C:\AppServ\www\fotofarra\contacto.php:1) in C:\AppServ\www\fotofarra\contacto.php on line 2

sin embargo esta todo como debe.. el seesion arriba de todo.. mi codigo esta asi.

Código PHP:
<? 
session_start
();

include(
'config.php'); //incluimos el config.php que contiene los datos de la conexión a la db
?>

<!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>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>.:: Foto Farra - Contacto/Sugerencia ::.</title>
<link href="web.css" rel="stylesheet" type="text/css" />
<style type="text/css">
<!--
.Estilo1 {color: #99CCFF}
.Estilo2 {color: #393939}
-->
</style>
</head>

<body>
    <div id="cuerpo">
        <!-- CABECERA -->
        <div id="cabecera">
            <!-- MENU -->
            <div id="menu">
                <ul>

<? include('inc_menu.php'); ?>

                </ul>
          </div>
            <a href="index.php"><img src="img/titulo.jpg" /></a> </div>
        <!-- CONTENIDO -->
        <div id="contenido">
            <div id="izquierda">
            <div>
            
<? include('inc_login.php'); ?><br />
            
            </div>
            <div>

<? include('inc_contador.php'); ?>

            </div>
                <h1><span class="Estilo2">Categorias</span><span class="Estilo1">.</span></h1>
              <div id="nav">
                <ul>

<? include('inc_categorias.php'); ?>

                </ul>
                </div>
                <br>
                <div id="derecha">
                    <h1><span class="Estilo2">Ultimas Fotos</span><span class="Estilo1">.</span></h1>

<? include('inc_ultimas_fotos.php'); ?>

              </div>
            </div>
            
            <div id="centro">
                <h1><span class="Estilo2">Contacto/Sugerencias</span><span class="Estilo1">.</span></h1>
                <div id="abaxd">
<p align="center"><font color="#3499ff">Por Favor no dude en contactarnos, preguntarnos, o mejor aun sugerirnos ideas para mejorar el sitio web. Lo responderemos en la brevedad posible.</font></p>
<div class="clear"></div>

<?
$cont
=$_GET['cont'];
if (
$cont == si)
{
echo 
"<p align='center'>---Mensaje Enviado Exitosamente---</p>";
}
else
{
echo 
"";
}

if (
$cont == no)
{
echo 
"<p align='center'>---Error Al Enviar Mensaje---</p>";
}
else
{
echo 
"";
}
?>

<form action="contacto_si.php" method="post" name="form1">
        <table border="0" align="center">
          <tr>
              <td align="right">Nombre:</td>
            <td align="left"><input class="text_con" name="nombre_contacto" id="nombre_contacto" type="text" maxlength="100" /></td>
          </tr>
          <tr>
              <td align="right">Mail:</td>
            <td align="left"><input class="text_con" name="mail_contacto" id="mail_contacto" type="text" maxlength="100" /></td>
          </tr> 
          <tr>
              <td align="right">Asunto:</td>
            <td align="left"><input class="text_con" name="asunto_contacto" id="asunto_contacto" type="text" maxlength="100" /></td>
          </tr>
          <tr>
              <td align="right">Asunto:</td>
            <td align="left"><textarea class="textarea_con" name="mensaje_contacto" rows="5" id="mensaje_contacto" type="text"></textarea></td>
          </tr>
          <tr>
            <td colspan="2" align="center"><font size="-1">Todos Los Campos Requeridos</font></td>
          </tr>          
          <tr>
              <td>&nbsp;</td>
              <td colspan="2" align="center"><input class="submit" type="submit" name="contacto" value="Enviar Mensaje" /></td>
          </tr>
        </table>
</form>
<div class="clear"></div>
                </div>
            </div>
        <div class="clear"></div>
        </div>
        <div id="pie">
            <p>&copy; 2007 FotoFarra - Diseñado por <a href="http://www.ndmsolutions.com" target="_blank"><img src="img/ndmsolutions.gif" /></a>        </div>
    </div>    
</body>
</html>
como lo peudo solucionar? porfa ayuda gracias...
  #2 (permalink)  
Antiguo 10/12/2007, 20:53
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 13 años, 8 meses
Puntos: 2135
Re: Problema con SESSION_START ();

Tienes una linea en blanco en la linea 1 de tu script, es por eso que no puedes iniciar sesion.

Saludos.
  #3 (permalink)  
Antiguo 11/12/2007, 04:30
 
Fecha de Ingreso: junio-2007
Mensajes: 19
Antigüedad: 12 años, 7 meses
Puntos: 0
Re: Problema con SESSION_START ();

no, no tengo lineas en blanco....
linea1:<?
linea2;seesion_start
  #4 (permalink)  
Antiguo 11/12/2007, 05:01
 
Fecha de Ingreso: noviembre-2006
Mensajes: 437
Antigüedad: 13 años, 3 meses
Puntos: 3
Re: Problema con SESSION_START ();

Hola. Pues si no tienes ninguna linia en blanco ni algun espacio mira si en el config.php has vuelto ha iniciar sesión. Si lo has hecho borra alguno de los dos.
Un saludo
  #5 (permalink)  
Antiguo 11/12/2007, 07:29
 
Fecha de Ingreso: junio-2007
Mensajes: 19
Antigüedad: 12 años, 7 meses
Puntos: 0
Re: Problema con SESSION_START ();

nop... mi config tiene la conexion y listo..
  #6 (permalink)  
Antiguo 11/12/2007, 08:52
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 13 años, 8 meses
Puntos: 2135
Re: Problema con SESSION_START ();

Te recomiendo abras tu script con algun editor como Notepad++ para que te muestre si tienes caracteres no-imprimibles, es probable que por ahi este tu error.

Saludos.
  #7 (permalink)  
Antiguo 11/12/2007, 10:19
 
Fecha de Ingreso: junio-2007
Mensajes: 19
Antigüedad: 12 años, 7 meses
Puntos: 0
Re: Problema con SESSION_START ();

q??? no ahi ya esta todo.... ese es el codigo y el config no es ya probe..
  #8 (permalink)  
Antiguo 11/12/2007, 10:29
 
Fecha de Ingreso: diciembre-2004
Mensajes: 98
Antigüedad: 15 años, 1 mes
Puntos: 0
Re: Problema con SESSION_START ();

Hola a todos:

¿En alguno de los includes siguientes inicias session?....
  #9 (permalink)  
Antiguo 11/12/2007, 11:00
 
Fecha de Ingreso: junio-2007
Mensajes: 19
Antigüedad: 12 años, 7 meses
Puntos: 0
Re: Problema con SESSION_START ();

no pero mira... en el register.php no me da el error y tiene basicamente la misma estructura..

Código PHP:
<? 
session_start
();

include(
'config.php'); //incluimos el config.php que contiene los datos de la conexión a la db
?>

<!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>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>.:: Foto Farra - Registrarse ::.</title>
<link href="web.css" rel="stylesheet" type="text/css" />
<style type="text/css">
<!--
.Estilo1 {color: #99CCFF}
.Estilo2 {color: #393939}
-->
</style>
</head>

<body>
    <div id="cuerpo">
        <!-- CABECERA -->
        <div id="cabecera">
            <!-- MENU -->
            <div id="menu">
                <ul>

<? include('inc_menu.php'); ?>

                </ul>
          </div>
            <a href="index.php"><img src="img/titulo.jpg" /></a> </div>
        <!-- CONTENIDO -->
        <div id="contenido">
            <div id="izquierda">
            <div>
            
<? include('inc_login.php'); ?><br />
            
            </div>
            <div>

<? include('inc_contador.php'); ?>

            </div>
                <h1><span class="Estilo2">Categorias</span><span class="Estilo1">.</span></h1>
              <div id="nav">
                <ul>

<? include('inc_categorias.php'); ?>

                </ul>
                </div>
                <br>
                <div id="derecha">
                    <h1><span class="Estilo2">Ultimas Fotos</span><span class="Estilo1">.</span></h1>

<? include('inc_ultimas_fotos.php'); ?>

              </div>
            </div>
            
            <div id="centro">
                <h1><span class="Estilo2">Registrarse</span><span class="Estilo1">.</span></h1>
<div id="abaxd">
<p align="center"><font color="#3499ff">Para navegar en FotoFarra es necesario que este registrado asi con su nick puede comentar, subir sus fotos y demas. Gracias por elejir Foto FARRA!</font></p>
<div class="clear"></div>
<form action="registrarse_si.php" method="post" name="Registrarse">
        <table border="0" align="center">
          <tr>
            <td align="right">Nick/Alias:</td>
            <td align="left"><input class="text" name="nick_usuario" type="text"  size="20" maxlength="20" /> 
            20 max</td>
          </tr>
          <tr>
              <td align="right">Nombre:</td>
            <td align="left"><input class="text" name="nombre_usuario" type="text"  size="25" maxlength="30" /></td>
          </tr>
          <tr>
              <td align="right">Apellido:</td>
            <td align="left"><input class="text" name="apellido_usuario" type="text"  size="25" maxlength="30" /></td>
          </tr>
          <tr>
              <td align="right">Email:</td>
            <td align="left"><input class="text" name="email_usuario" type="text"  size="30" maxlength="50" /></td>
          </tr>
          <tr>
              <td align="right">Sexo:</td>
            <td align="left">
              <select name="sexo_usuario" id="sexo_usuario">
                <option value="Masculino">Masculino</option>
                <option value="Femenino">Femenino</option>
              </select>
            </td>
          </tr>
          <tr>
              <td align="right">País:</td>
            <td align="left">
              <select name="pais_usuario" id="pais_usuario">
                <option value="Argentina">Argentina</option>
                <option value="Bolivia">Bolivia</option>
                <option value="Brasil">Brasil</option>
                <option value="Canadá">Canadá</option>
                <option value="Chile">Chile</option>
                <option value="Colombia">Colombia</option>
                <option value="Costa Rica">Costa Rica</option>
                <option value="Cuba">Cuba</option>
                <option value="Ecuador">Ecuador</option>
                <option value="El Salvador">El Salvador</option>
                <option value="Guatemala">Guatemala</option>
                <option value="Honduras">Honduras</option>
                <option value="Mexico">México</option>
                <option value="Nicaragua">Nicaragua</option>
                <option value="Panama">Panamá</option>
                <option value="Paraguay" selected="selected">Paraguay </option>
                <option value="Peru">Perú</option>
                <option value="Puerto Rico">Puerto Rico</option>
                <option value="Republica Dominicana">República Dominicana</option>
                <option value="Uruguay">Uruguay</option>
                <option value="USA">USA</option>
                <option value="Venezuela">Venezuela</option>
                <option value="Otro Pais">Otro Pais</option>
              </select>
            </td>
          </tr>
          <tr>
              <td align="right">Password:</td>
            <td align="left"><input class="text" name="password_usuario" type="password"  size="25" maxlength="15" /> 
            15 max</td>
          </tr> 
          <tr>
              <td align="right">Repitir Password:</td>
            <td align="left"><input class="text" name="password2_usuario" type="password"  size="25" maxlength="15" /> 
            15 max</td>
          </tr>
          <tr>
              <td align="center" colspan="2">Por favor ingrese el codigo que ve en la imagen,<br />
                <strong>deben coincidir las mayusculas y minusculas,</strong> <br />
               sino puede leerlo actualize la pagina.</td>
          </tr>
          <tr>
              <td align="center" colspan="2">
<?        
    $captcha_texto 
"";
        
    for (
$i 1$i <= 6$i++) {
        
$captcha_texto .= caracter_aleatorio();
    }
        
    
$HTTP_SESSION_VARS["captcha_texto_session"] = $captcha_texto;

    function 
caracter_aleatorio() {

        
mt_srand((double)microtime()*1000000);
        
        
$valor_aleatorio mt_rand(1,3);
        
        switch (
$valor_aleatorio) {
        case 
1:
            
$valor_aleatorio mt_rand(97122); 
            break;
        case 
2:
            
$valor_aleatorio mt_rand(4857);
            break;
        case 
3:
            
$valor_aleatorio mt_rand(6590);
            break;
        }
        
        return 
chr($valor_aleatorio);
    }
?>
            <img src="captcha.php?<?php echo SID?>" />
            </td>
          </tr>
          <tr>
              <td align="right">Escriba el Codigo:</td>
            <td align="left"><input class="text" name="captcha" type="text" id="captcha" size="10" maxlength="6" /></td>
          </tr>
          <tr>
            <td colspan="2" align="center"><font size="-1">Todos Los Campos Requeridos</font></td>
          </tr>          
          <tr>
              <td colspan="2" align="center"><input class="submit" type="submit" name="reg" value="Registrarse" /></td>
          </tr>
        </table>
</form>
<div class="clear"></div>
                </div>
            </div>
        <div class="clear"></div>
        </div>
        <div id="pie">
            <p>&copy; 2007 FotoFarra - Diseñado por <a href="http://www.ndmsolutions.com" target="_blank"><img src="img/ndmsolutions.gif" /></a>        </div>
    </div>    
</body>
</html>
probe sacando ese php antes del form en el contacto.php pero nada
  #10 (permalink)  
Antiguo 11/12/2007, 11:15
 
Fecha de Ingreso: diciembre-2004
Mensajes: 98
Antigüedad: 15 años, 1 mes
Puntos: 0
Re: Problema con SESSION_START ();

Hola loks:

¿Como utilizas contacto.php?, ¿va en algún include?.

include('contacto.php')

Ya que en el caso de que hayas enviado algo a la pantalla (echo) o header antes del include te dara ese error.
  #11 (permalink)  
Antiguo 11/12/2007, 17:45
 
Fecha de Ingreso: junio-2007
Mensajes: 19
Antigüedad: 12 años, 7 meses
Puntos: 0
Re: Problema con SESSION_START ();

lo uso normal...
  #12 (permalink)  
Antiguo 12/12/2007, 19:08
 
Fecha de Ingreso: junio-2007
Mensajes: 19
Antigüedad: 12 años, 7 meses
Puntos: 0
Re: Problema con SESSION_START ();

por fav si alguine me ayuda es lo unico q me keda...
  #13 (permalink)  
Antiguo 12/12/2007, 19:18
 
Fecha de Ingreso: mayo-2006
Ubicación: Madrid
Mensajes: 153
Antigüedad: 13 años, 9 meses
Puntos: 3
Re: Problema con SESSION_START ();

Un intento a la desesperada:

Prueba a poner <?php ... ?> en vez de <? ... ?>

No sé.. lo mismo funciona
  #14 (permalink)  
Antiguo 12/12/2007, 19:52
 
Fecha de Ingreso: noviembre-2006
Mensajes: 437
Antigüedad: 13 años, 3 meses
Puntos: 3
Re: Problema con SESSION_START ();

Hola de nuevo. Si dices que no tienes ninguna linia en blanco, ni espacio en blanco entre <?php y session_start();, tampoco llamas al archivo via include y és el unico session_start que tienes en la página realmente no sé que más decirte..Seguro que no estas iniciando sesión en ningún include que pones en la página? Revisa todo esto nuevamente porque por ahi estará el error.. Si lo solucionas ya diras que era, estoy intrigado :)

Un saludo
  #15 (permalink)  
Antiguo 12/12/2007, 22:14
Avatar de a83
a83
 
Fecha de Ingreso: noviembre-2005
Ubicación: Santiago de chile
Mensajes: 637
Antigüedad: 14 años, 2 meses
Puntos: 1
Re: Problema con SESSION_START ();

Código PHP:
<? 
session_start
();
?>
<?
include('config.php'); //incluimos el config.php que contiene los datos de la conexión a la db
?>

intenta de esta manera ;)
saludos
  #16 (permalink)  
Antiguo 13/12/2007, 01:06
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 15 años, 6 meses
Puntos: 102
Re: Problema con SESSION_START ();

¿Qué editor estás usando?, ¿bajo qué Sistema Operativo trabajas?, ¿con qué codificación lo estás guardando?.

Tengo entendido algunos editores que guardan con cierta codificación (creo que con UTF-8) ponen al inicio del archivo un carácter especial... no en tu contenido (no lo verás) pero esta ahí.

En lo que recuerdo cómo era el asunto y si de verdad estás absolutamente seguro que no tienes salida antes del session_start(), y si nada de lo que te han sugerido funciona... contesta las preguntas que hice para buscar más información (es algo muy raro).



Edito:

No tengo tan Mala memoria... Tu problema puede llamarse Byte Order Mark (BOM)
http://unicode.org/faq/utf_bom.html#22
http://es.wikipedia.org/wiki/Marca_d...ytes_%28BOM%29

... y de la Wikipedia cito:
Cita:
[...] Muchas aplicaciones Windows (incluyendo Windows Notepad) añaden un BOM a sus ficheros UTF-8. Sin embargo en los sistemas tipo Unix (que hacen uso exhaustivo de ficheros de texto para configuración) no se recomienda esta práctica, pues puede interferir con el correcto procesado de códigos importantes, tales como el hash-bang al principio de la interpretación de un script. También podría interferir con el código fuente de aquellos lenguajes de programación que no lo reconozcan. Por ejemplo, gcc informa de los caracteres perdidos al comienzo del fichero fuente, y en PHP, cuando el output buffering está desactivado, tiene el sutil efecto de hacer que la página comience de inmediato a ser enviada al navegador, evitando que las cabeceras (custom headers) puedan ser especificadas por el script PHP.
THEN GOTO LINE 1
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"

Última edición por jam1138; 13/12/2007 a las 01:14
  #17 (permalink)  
Antiguo 13/12/2007, 04:01
 
Fecha de Ingreso: diciembre-2004
Mensajes: 98
Antigüedad: 15 años, 1 mes
Puntos: 0
Re: Problema con SESSION_START ();

Hola loks:

Vamos por partes: he copiado tu código y lo he puesto a funcionar sin que me de el error que tu dices, evidentemente me da error en los includes ya que ese código no lo tengo.

Si no haces ninguna salida a pantalla la función session start puede estar en cualquir parte del script, por ejemplo, puedes validar usuarios contra una base de datos y despues iniciar sesión, por supuesto en los demás scrips si tiene que ir como primera línea.

Por todo ello revisa bien tu código como te dice jam1138

Nota: el copiado y limpieza lo hice con UltraEdit32 y todos los scripts los hago con el.

Saludos
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 12:55.