Hola a todos,
Ayer integré el login de phpBB a un sitio php que estoy diseñando. Logré hacer que este funcione a la perfección pero cuando ingresa al website alguien que no esta logeado se muestra el siguiente error:
Código:
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1007: Cannot modify header information - headers already sent by (output started at /home/audition/public_html/carpetaken/index.php:10)
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1007: Cannot modify header information - headers already sent by (output started at /home/audition/public_html/carpetaken/index.php:10)
[phpBB Debug] PHP Notice: in file /includes/session.php on line 1007: Cannot modify header information - headers already sent by (output started at /home/audition/public_html/carpetaken/index.php:10)
session.php - Lineas 999 ~ 1008:
Código PHP:
function set_cookie($name, $cookiedata, $cookietime)
{
global $config;
$name_data = rawurlencode($config['cookie_name'] . '_' . $name) . '=' . rawurlencode($cookiedata);
$expire = gmdate('D, d-M-Y H:i:s \\G\\M\\T', $cookietime);
$domain = (!$config['cookie_domain'] || $config['cookie_domain'] == 'localhost' || $config['cookie_domain'] == '127.0.0.1') ? '' : '; domain=' . $config['cookie_domain'];
header('Set-Cookie: ' . $name_data . (($cookietime) ? '; expires=' . $expire : '') . '; path=' . $config['cookie_path'] . $domain . ((!$config['cookie_secure']) ? '' : '; secure') . '; HttpOnly', false);
}
index.php:
Código PHP:
Ver original<? include('variables.php');?>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/html40/loose.dtd">
<html>
<head>
<title>AuditionTown - Fanáticos como tú!</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="estilos.css" rel="stylesheet" type="text/css">
</head>
<body bgcolor="#CD43A3">
<table width="100%" height="2" style="background:url('imagenes/fondo_at1.jpg');background-repeat:no-repeat;background-position:top center;" cellpadding="0" cellspacing="0" border="0">
<tr valign="top">
<td><div align="center"><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,79,0" id="logo_flotante" width="1000" height="350"><param name="movie" value="logo flotante.swf"><param name="wmode" value="transparent"><param name="quality" value="high"><param name="allowscriptaccess" value="samedomain"><embed type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" name="logo_flotante" width="1000" height="350" src="logo flotante.swf" quality="high" swliveconnect="true" allowscriptaccess="samedomain" wmode="transparent"></embed></object></div></td></tr>
<tr valign="top">
<td>
<div align="center" style="padding-left:1px;">
<table align="center" cellpadding="0" cellspacing="0" border="0" width="999" style="background: #5c004e url('imagenes/fondotop.png');background-repeat:repeat-x;">
<tr>
<td width="1" style="background: url('clear_right.jpg');background-repeat:repeat-y;"><img src="imagenes/clear_right.jpg"></td><td>
<!-- contenido -->
<br>
<div style="padding-left:15px;padding-right:15px;"><table align="center" width="700" height="150" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="20%">
<? include('izquierda.php');?>
</td>
<td width="60%">
<? include('centro.php');?>
</td><td width="20%">
<? include('derecha.php')?>
</td></tr></table>
</div>
<!-- contenido -->
<br>
<br>
</td><td width="1" style="background: url('imagenes/clear_right.jpg');background-repeat:repeat-y;"><img src="imagenes/clear_right.jpg"></td>
</tr>
</table></div>
</td>
</tr>
<tr>
<td>
<? include('footer.php');?>
</td></tr>
</table>
</body>
</html>
La línea: include izquierda.php llama al menu izquierda:
Código PHP:
Ver original<!-- TABLA IZQUIERDA -->
<div style="padding-top:37px;padding-right:5px;">
<? echo $top_tabla?>MENU PRINCIPAL<? echo $tabla_2?>
MENU PRINCIPAL OPCIONES
<? echo $tabla_3?>
<? echo $top_tabla?>INGRESAR<? echo $tabla_2?><div align="center">
<? include('login.php');?></div>
<? echo $tabla_3?></div>
<!-- TABLA IZQUIERDA -->
Y por último la línea include login.php llama al login:
Código PHP:
Ver original<?php
define('IN_PHPBB', true); // se define que se va a usar phpbb. $phpbb_root_path = '/home/audition/public_html/foro/'; // el path directo del servidor a phpbb3, varia algo dependiendo del servidor, si hay errores con esto en el mismo error sale el path correcto.
$phpbb_url_path = 'http://auditiontown.net/foro/'; // la url hacia tu phpbb3
include($phpbb_root_path . 'common2.' . $phpEx); // incluimos el common.php que es muy importante para la bd
$user->session_begin();
$auth->acl($user->data);
if($user->data['is_registered'])
{
$dbms = 'mysqli';
$dbhost = 'localhost';
$dbport = '';
$dbname = '******';
$dbuser = '******';
$dbpasswd = '******';
$avvy = "SELECT * FROM phpbb_users WHERE user_id =" . $user->data['user_id'];
{
$link = $row['user_avatar'];
$width = $row['user_avatar_width'];
$height = $row['user_avatar_height'];
}?>
LOGEADO
<?php
} else {
?>
LOGEATE
<?php }
?>
Sé que el problema podria ser que la session se esta ejecutando despúes de un código HTML, pero he intentado acomodarlo y no he tenido éxito alguno.
Espero que alguien pueda ayudarme,
Gracias.