Foros del Web » Programando para Internet » PHP »

Problema con headers

Estas en el tema de Problema con headers en el foro de PHP en Foros del Web. Hola gente cuando ejecuto login.php cuando ya he iniciado session me aparece el siguiente error Warning: Cannot modify header information - headers already sent by ...
  #1 (permalink)  
Antiguo 17/12/2008, 07:52
 
Fecha de Ingreso: junio-2008
Mensajes: 119
Antigüedad: 16 años, 5 meses
Puntos: 1
Problema con headers

Hola gente cuando ejecuto login.php cuando ya he iniciado session me aparece el siguiente error

Warning: Cannot modify header information - headers already sent by (output started at /home/guido/Desktop/Guido/Facultad/Chuecko/sistema/comun/comun.class.php:15) in /home/guido/Desktop/Guido/Facultad/Chuecko/login.php on line 51

login.php

Código PHP:
<?php

/*

Basic login example with php user class

http://phpUserClass.com

*/
require_once 'sistema/user/access.class.php';

$user = new flexibleAccess();
include_once(
"sistema/comun/comun.class.php"); 
$comun=new comun('Login');
$comun->body();
echo 
"<h2>Login</h2>";
if ( 
$_GET['logout'] == 

    
$user->logout('http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF']);

if ( !
$user->is_loaded() )

{

    
//Login stuff:

    
if ( isset($_POST['uname']) && isset($_POST['pwd'])){

      if ( !
$user->login($_POST['uname'],$_POST['pwd'],$_POST['remember'] )){//Mention that we don't have to use addslashes as the class do the job

        
echo '<font color="#FF0000">Nombre de usuario o password incorrecto</font>';

      }
//else{

        //user is now loaded

        //header('Location: http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF']);

      //}

    
}

    echo 
'<div align="center">

    <p><form method="post" action="'
.$_SERVER['PHP_SELF'].'" />
    <table width="558"  cellpadding="4">
    <tr>

    <td width="25%" align="right" valign="top">Usuario:</td>
    <td width="75%"><input type="text" name="uname" /></td>
    </tr>
    <tr>
    <td width="25%" align="right" valign="top">Contrase&ntilde;a:</td>
    <td width="75%"><input type="password" name="pwd" /></td>
    </tr>
    <tr>

    <tr></tr>
    <td width="25%" align="right" valign="top">Recordarme?</td>
    <td width="75%"><input type="checkbox" name="remember" value="1" /></td>
    </tr></table><input type="submit" value="Entrar" /></form></p></div>'
;
$comun->footer();

}

if (
$user->is_loaded() ) {
header("Location: index.php");  // esta es la linea q me marca el error
}
?>
comun.class.php

Código PHP:
<?php

class comun {

//Constructor que devuelve la cabezera 
//IN $seccion - Nombre de la seccion
//OUT String - Header
function comun($seccion){
$imprimir"<!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'>"
;

$imprimir.="<head><meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1' /><link rel='stylesheet' type='text/css' href='styles.css' />

<title>Chuecko.com.ar | $seccion</title>
<link rel='shortcut icon' href='favicon.ico'/>
</head>"
;
echo 
$imprimir// esta es la otra linea q me marca el error
}

//Obtener el body
//IN void
//OUT String - Body
function body(){
echo 
"<body>

<div id='header'>

  <h1><span class='heading_color'><em>Chuecko.Com.Ar</em></span></h1>

</div>

<div id='header_menu'>

<ul class='navlist'>
<li><a href='javascript:agregar()'>Agregar a favoritos</a></li>

<li><a href='javascript:construccion()'>Login</a></li>
<li><a href='javascript:construccion()'>Registrate!</a></li>

</ul>

</div>"
;

include_once(
'sistema/comun/col_izq.php');

include_once(
'sistema/comun/col_der.php');
//Es el div principal
echo"<div id='content'>";
}

function 
footer(){
echo 
"<div id='footer'>&copy; <a href='http://'>Chuecko</a> | Created by Chuecko</div>

</div>

</body>

</html>"
;
}
}
Les marque las linea en los dos script, acepto sugerencias con el tratamiento con el codigo...
Saludos... Espero q me ayuden por que estoy estancado
  #2 (permalink)  
Antiguo 17/12/2008, 08:04
Avatar de Carxl
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: Bogotá
Mensajes: 2.993
Antigüedad: 18 años, 3 meses
Puntos: 70
Respuesta: Problema con headers

Hola Chuecko...

Quizás leyendo un poco sobre header termines de entender como funciona:

http://www.php.net/header

El error mas común cuando se usa header location, es hacer "echo, print" (al hacer otra salida del navegador).

Saludos
__________________
Hay 10 tipos de personas, los que entienden binario y los que no. (Anónimo)
www.programandoweb.com
  #3 (permalink)  
Antiguo 17/12/2008, 08:08
 
Fecha de Ingreso: junio-2008
Mensajes: 119
Antigüedad: 16 años, 5 meses
Puntos: 1
Respuesta: Problema con headers

OK lo estoy leyendo...
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 14:46.