TRUCOS PHPBB:
UTILIZACIÓN DE SISTEMA DE USUARIOS PHPBB EN TU PORTAL:
Bueno, primero una breve explicación. Los foros phpBB tiene un sistema de usuarios integrado, como todos sabeis, y existe la posibilidad de utilizar ese sistema en las páginas que tu quieras o desde tu portal.
Lo primero que deberiamos de hacer es un formulario de login desde cualquier página de tu portal. Partiremos de la idea de que tu foro está en el directorio foros/, y quieres poner un formulario de login en el directorio anterior que es dónde tienes tu portal.
Bien aquí está el código:
Codigo
Bien consideraciones respecto al código que conviene saber.
En primer lugar en la variable
$volver tienes que poner la dirección del script al que se redireccionará tras el logueo pero muy importante, esa dirección debe de ser relativa al directorio del foro. Por ejemplo si quieres volver al index de tu portal, su ruta relativa al directorio del foro es
'../index.php'Luego además se tiene que poner en la variable
$phpbb_root_path la ruta(el directorio) de nuestro foro.
Y una pequeña explicación a todo esto es la siguiente: A pesar de que el formulario de logueo lo subimos al directorio de nuestro portal, el logueo en sí lo hace el script del foro encargado de ello, es decir el script
'foro/login.php'Hacía tiempo que quería explicar un poco el código para que los que entienden un poco de programación sepan qué se está haciendo en realidad, asi que paciencia.
Codigo
Bueno las dos primeras líneas más o menos están explicadas. Y todo el bloque que aparece después (el del if) es simplemente para iniciar sesión phpBB.
Y por qué debemos de iniciar sesión phpBB, pués muy sencillo. Resulta que para saber si el usuario está logueado o no es necesario. Y como dependiendo de si el usuario está logueado o no habremos de mostrar el formulario de logueo o el cartelito con su avatar y lo que se nos antoje pués por ahí van los tiros.
Luego viene está línea:
Codigo
Lo que hace esta línea(recordemos que ya hemos iniciado sesión phpBB y no confundamos iniciar sesión desde phpBB con estar logueado) es simplemente comprobar si el usuario está logueado en cuyo caso crearía un link para desloguearse, y si no está logueado pués simplemente mostraría LOGIN.
Luego viene la parte que chekea si el usuario está logueado en cuyo caso leeríamos su avatar:
Codigo
No tiene mucho misterio simplemente se usa el mismo código phpBB para leer el avatar. Y lo concatenamos a la variable que hemos creado antes para logueo_deslogueo.
Y bueno lo más importante de todo, el formulario de logueo:
Codigo
Lo que hacemos es crear un formulario en html muy parecido al que usa el propio phpBB, pero unas cuantas diferencias, primero el action del formulario ha de ir obviamente al login.php del foro, para lo cual usaremos nuestra variable phpbb_root_path. Y el truco es pasar una variable de retorno al script login.php, en un campo de tipo hidden. El script login.php realizará el logueo registrará en la sesión phpBB los datos de usuario introducidos en nuestro formulario y nos redireccionará a la ruta que hayamos pasado en la variable redirect, es decir, la ruta del index de nuestro portal pero desde el directorio del foro, la que pusimos en $volver.
Y bueno con el formulario de login va un enlace al registro por si el usuario no está registrado y desea hacerlo.
En fin eso es lo básico. Si además de eso quieres poner un enlace a los mensajes privados, un enlace al perfil del usuario(en caso de que esté logueado) y unas mini-estadísticas como las que aparecen en el index del foro, lo dejo todo el código aquí.
Codigo
El código que hay de más corresponde, primero a generar la parrilla de usuarios conectados, record online, mensajes, usuarios, último registrado, datos que se muestran siempre independientemente de si el user está logueado o no. Y tb para mostrar enlaces a mensajes, perfil y foro si está logueado.
Prueba de script funcionando:
http://webpack.es/index.phpUsuario:prueba
Password:prueba
Funciona!
Salu2 ;)