Ver Mensaje Individual
  #6 (permalink)  
Antiguo 18/01/2005, 17:59
Avatar de yoseman
yoseman
 
Fecha de Ingreso: diciembre-2003
Ubicación: Alicante (Spain)
Mensajes: 471
Antigüedad: 20 años, 5 meses
Puntos: 5
He estado probando y amí me funciona propagando el sid por query string fuera de los foros
He puesto cuatro scripts que se llaman entre ellos(en plan cutre eso sí), y que incluyen el archivo que muestra el login/logout del foro
http://elotrositio.tuarrobanet.com/log1.php
http://elotrositio.tuarrobanet.com/log2.php
http://elotrositio.tuarrobanet.com/log3.php
http://elotrositio.tuarrobanet.com/log4.php
El archivo que muestra el login/logout lo puse en la ruta del foro
http://elotrositio.tuarrobanet.com/foro/log.php
aqui están los código:
log1.php
Código PHP:
<?
define
('IN_PHPBB'true);
$phpbb_root_path 'foro/';
include(
$phpbb_root_path 'extension.inc');
include(
$phpbb_root_path 'common.'.$phpEx);

//
// Start session management
//
$userdata session_pagestart($user_ipPAGE_INDEX);
init_userprefs($userdata);
//
// End session management
//
include($phpbb_root_path 'log.'.$phpEx);
?>
log1<br>
<a href="log2.php?sid=<?=$userdata['session_id']?>">log2</a><br>
<a href="log3.php?sid=<?=$userdata['session_id']?>">log3</a><br>
<a href="log4.php?sid=<?=$userdata['session_id']?>">log4</a><br>
log2.php
Código PHP:
<?
define
('IN_PHPBB'true);
$phpbb_root_path 'foro/';
include(
$phpbb_root_path 'extension.inc');
include(
$phpbb_root_path 'common.'.$phpEx);

//
// Start session management
//
$userdata session_pagestart($user_ipPAGE_INDEX);
init_userprefs($userdata);
//
// End session management
//
include($phpbb_root_path 'log.'.$phpEx);
?>

<a href="log1.php?sid=<?=$userdata['session_id']?>">log1</a><br>
log2<br>
<a href="log3.php?sid=<?=$userdata['session_id']?>">log3</a><br>
<a href="log4.php?sid=<?=$userdata['session_id']?>">log4</a><br>
log3.php
Código PHP:
<?
define
('IN_PHPBB'true);
$phpbb_root_path 'foro/';
include(
$phpbb_root_path 'extension.inc');
include(
$phpbb_root_path 'common.'.$phpEx);

//
// Start session management
//
$userdata session_pagestart($user_ipPAGE_INDEX);
init_userprefs($userdata);
//
// End session management
//
include($phpbb_root_path 'log.'.$phpEx);
?>

<a href="log1.php?sid=<?=$userdata['session_id']?>">log1</a><br>
<a href="log2.php?sid=<?=$userdata['session_id']?>">log2</a><br>
log3<br>
<a href="log4.php?sid=<?=$userdata['session_id']?>">log4</a><br>
log4.php
Código PHP:
<?
define
('IN_PHPBB'true);
$phpbb_root_path 'foro/';
include(
$phpbb_root_path 'extension.inc');
include(
$phpbb_root_path 'common.'.$phpEx);

//
// Start session management
//
$userdata session_pagestart($user_ipPAGE_INDEX);
init_userprefs($userdata);
//
// End session management
//
include($phpbb_root_path 'log.'.$phpEx);
?>

<a href="log1.php?sid=<?=$userdata['session_id']?>">log1</a><br>
<a href="log2.php?sid=<?=$userdata['session_id']?>">log2</a><br>
<a href="log3.php?sid=<?=$userdata['session_id']?>">log3</a><br>
log4<br>
En estos cuatro script asignamos la ruta del foro respecto del actual script en phpbb_root_path (foro/ en mi caso) y propagamos identificador de sesión por query string.
Y en el script que se incluye y muestra el login/logout:
Código PHP:
<?
define
('IN_PHPBB'true);
$log_in_out=( $userdata['session_logged_in'] ) ? ('<a href="'.$phpbb_root_path.'login.'.$phpEx.'?logout=true&sid=' $userdata['session_id'].'&redirect=../log1.php">LOGOUT  ['.$userdata['username'].']</a>') : ('LOGIN');
?>
<div align="center">

<?
print $log_in_out."<br /><br /><br />";
if (!
$userdata['session_logged_in'])
{
?>
<form action="<?=$phpbb_root_path?>login.php" method="post">
<input type="hidden" name="redirect" value="../log1.php?sid=<?=$userdata['session_id']?>">
Usuario:&nbsp;<input type="text" name="username" size="10" /><br>
Contrase&ntilde;a:&nbsp;<input type="password" name="password" size="10" maxlength="32" /><br />
&nbsp;&nbsp; &nbsp;&nbsp;Entrar automáticamente en cada visita
        <input class="text" type="checkbox" name="autologin" />

        &nbsp;&nbsp;&nbsp;
        <input type="submit" class="mainoption" name="login" value="Login" />
</form> 
</div><?=$a?>
<?
}?>
redirecciona a ../log1.php cuando uno se desloguea o loguea, y omitimos todo este código:
Código PHP:
$phpbb_root_path 'foro/';
include(
$phpbb_root_path 'extension.inc');
include(
$phpbb_root_path 'common.'.$phpEx);

//
// Start session management
//
$userdata session_pagestart($user_ipPAGE_INDEX);
init_userprefs($userdata);
//
// End session management
// 
ya que el archivo que llama a éste ya lo hace y sino daría error de función redeclarada etc.

A ver si te sirve de algo este ejemplillo.

Salu2 ;)
__________________
[+]
[+]