Ver Mensaje Individual
  #1 (permalink)  
Antiguo 28/01/2011, 15:42
nintpkmn
 
Fecha de Ingreso: enero-2011
Mensajes: 2
Antigüedad: 13 años, 2 meses
Puntos: 0
Ayuda con el sistema de identificación.

Buenas a tod@s!

Hace poco implanté un sistema de identificación de usuarios en la web, que utilizaba las bases de datos del foro PHPBB3 que tengo instalado.
Para ello, seguí este post:
http://www.forosdelweb.com/f121/login-sesion-sitio-con-phpbb3-pagina-externa-phpbb3-541462/

Conseguí hacer funcionar el sistema de login o registro en la web, sin embargo, no he conseguido hacer que para que determinados invitados puedan acceder a determinadas secciones tengan que registrarse o iniciar sesión.

Aquí les muestro los códigos de los archivos login.php y sesiones.php que tengo en mi caso particular:

sesiones.php

Código PHP:
<?php 
 
define
('foro'true); // se define que se va a usar phpbb. 
$phpbb_root_path '/home/a3921749/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://www.nintpkmn.tk/foro/'// la url hacia tu phpbb3 
$phpEx substr(strrchr(__FILE__'.'), 1); // tipo de extension 
include($phpbb_root_path 'common.' $phpEx); // incluimos el common.php que es muy importante para la bd 
include($phpbb_root_path 'config.' $phpEx); //include de config.php  importante tambien en bd usuarios  y pass
 
// iniciamos sesion 
$user->session_begin(); 
$auth->acl($user->data); 
 
?>
login.php

Código PHP:
<center><?php 
if($user->data['is_registered']) 

//en foro suponemos que el prefijo de la tabla es foro 
$avvy "SELECT * FROM forousers WHERE user_id =" $user->data['user_id']; 
$result mysql_query($avvy) or die (mysql_error()); 
 
while(
$row mysql_fetch_array($result)) 

$link $row['user_avatar']; 
$width $row['user_avatar_width']; 
$height $row['user_avatar_height']; 
}
?> 
<a href="http://nintpkmn.tk/foro/memberlist.php?mode=viewprofile&amp;u=<?php echo $user->data['user_id'];?> " target="_self"></a> 
 
 
<table width="145" height="392" border="0" cellpadding="0" cellspacing="0" > 
  <tr> 
    <td align="center" valign="top"> 
        <table width="145" border="0" cellspacing="0" cellpadding="0"> 
          <tr> 
            <td align="center">Hola <a href="http://nintpkmn.tk/foro/memberlist.php?mode=viewprofile&amp;u=<?php echo $user->data['user_id'];?> " target="_self"> <?php echo $user->data['username'];?> </a>!</td> 
          </tr> 
        </table> 
      <table width="135" height="255" border="0" cellpadding="0" cellspacing="0"> 
        <tr> 
            <td height="250" align="center" valign="middle"><img src="http://nintpkmn.tk/foro/download/file.php?avatar=<? echo $link?> " border="0" width="<? echo $width?> " height=" <? echo $height?>" alt='Avatar' /></td> 
        </tr> 
      </table> 
      <table width="145" border="0" cellspacing="0" cellpadding="0"> 
          <tr> 
            <td align="center" valign="middle" class="Estilo5"><span class="Estilo20"><a href="http://nintpkmn.tk/foro/ucp.php" >Visita tu<br /> 
            Panel de control</a><br />            
            <?php echo( "<a href=" $phpbb_url_path 'ucp.php?mode=logout&redirect=../index.php' '&sid=' $user->data['session_id'] . " >Cerrar Sesion</a>");?>.</td> 
        </tr> 
      </table> 
      <table width="145" height="72" border="0" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF"> 
          <tr> 
            <td align="center" valign="top">0</td> 
          </tr> 
      </table></td> 
  </tr> 
</table> 
 
 
 
<?php 
} else { 
 
?> 
 <table width="145" height="392" border="0" cellpadding="0" cellspacing="0"> 
  <tr> 
    <td width="145" align="center" valign="top"><p> 
 
        <form action="http://nintpkmn.tk/foro/ucp.php?mode=login" target="_top" method="post" enctype="multipart/form-data"> 
          <img src="http://subirimg.com/images/ep667alll.jpg" alt="." width="135" height="250" /> Usuario: 
          <input name="username" type="text" style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; WIDTH: 110px; BORDER-BOTTOM: 0px" value="" size="10" /> 
          <br /> 
          Contrase&ntilde;a:<br /> 
          <input type="password" name="password"  style="BORDER-RIGHT: 0px; BORDER-TOP: 0px;  BORDER-LEFT: 0px; WIDTH: 110px; BORDER-BOTTOM: 0px" size="10" maxlength="32"  > 
          <br /> 
          <input type="checkbox" name="autologin" id="autologin" class="checkbox" value="ON"  /> 
          Autologin 
          <input type="hidden" name="redirect" value="../index.php"> 
 
          <div><a href="http://nintpkmn.tk/foro/ucp.php?mode=register" title="Léete las condiciones y decide si quieres pertenecer a la comunidad NinTpKmn." >Soy nuevo</a></div> 
          <div><a href="http://nintpkmn.tk/foro/ucp.php?mode=sendpassword" title="Danos tu nombre de usuario y tu correo electr&oacute;nico y te la mandamos." >Recordar password </a></div> 
          <input type="submit" value=" Entrar " name="login"  style="BORDER-RIGHT: 0px; BORDER-TOP: 0px;  BORDER-LEFT: 0px; WIDTH: 60px; BORDER-BOTTOM: 0px"> 
 
    </form></td> 
  </tr> 
</table> 
 
 
 
 
<?php 
 
?></center>
El problema que tengo es ese que les he comentado antes, y es que no consigo como hacer para que los usuarios no registrados o que no hayan iniciado sesión, no puedan acceder a algunas secciones de la web.

Me gustaría consultarles si se les ocurre o conocen algún código que obligue a un usuario no logeado a ser "redireccionado" al archivo login.php ; y en el caso de que sí esté logeado, que pueda acceder sin problemas.

He de decirles que no entiendo mucho el lenguaje PHP, pero cualquier comentario, sugerencia o ayuda, les estaré muy agradecido.

Un saludo a tod@s!