Recordad que para pedir soporte alguno, debéis facilitar los datos de soporte oportunos por favor, mirad aquí y leer las Normas generales del foro, esto nos servirá de ayuda para dar el mejor soporte..

Gracias.

La Administración de phpBB España.

Integrar login en web

Foros donde podréis dejar vuestras dudas sobre phpBB 3.0.x
Cerrado
Jota_sk
Observador/a
Mensajes: 35
Registrado: 15 May 2007, 22:32

Integrar login en web

#1

Mensaje por Jota_sk »

Versión de phpBB: 3
Tipo de phpBB: phpBB estandar, (tambien llamado Vanilla) phpBB2 o phpBB3
MODs Instalados: No
Tu conocimiento: Principiante
Enlace de la web: http://www.tierralaserie.com/web/

¿Qué recuerdas haber hecho en el foro antes de aparecer este error?
no hay error

¿Qué has realizado para intentar resolver el problema?
Seguir el tutorial de esta misma web

http://www.phpbb-es.com/foro/viewtopic.php?f=76&t=14279" onclick="window.open(this.href);return false;


Descripción y Mensaje
He seguido el tutorial de esta web para hacer un login en una web. Para acceder logearte en la web y en el foro a la vez. No me sale ningun error, pero el problema es que yo ingreso mi nombre de usuario y mi contraseña, y lo que hace es que me envia al foro para logearme (ucp.php?mode=login), donde deveria autologearse y mostrar el avatar y abajo dos link's, uno para ir al panel de control del foro, y otro para cerrar sesion. Pero como ya he dicho me envia al foro para registrareme.

El codigo es el siguiente:
sesiones.php

Código: Seleccionar todo

<?php 
define('IN_PHPBB', true); // se define que se va a usar phpbb. 
$phpbb_root_path = '/mnt/web7/13/00/51899909/htdocs/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.tierralaserie.com/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: Seleccionar todo

<html>
<head>
<link rel="stylesheet" type="text/css" media="screen" href="./iframes.css" />
</head>
<?php 
if($user->data['is_registered']) 
{ 
//en phpbb3_ suponemos que el prefijo de la tabla es phpbb3_ 
$avvy = "SELECT * FROM phpbb3_users 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="<?php echo $phpbb_url_path?>memberlist.php?mode=viewprofile&u=<?php echo $user->data['user_id'];?> " target="_self"></a> 

<table border="0" cellspacing="0" cellpadding="0" height="236px" width="221px" bgcolor="#88B8E6" class="texto">
	<tr>
		<td valign="top" height="20px" background="images/t-registrate_fondo.JPG"colspan="5"><img src="./images/t-registrate.jpg" /></td>
	</tr>
	<tr> 
		<td colspan="2" align="center" valign="middle"><img src="<?php echo $phpbb_url_path?>download/file.php?avatar=<? echo $link?>" border="0" width="90px" height="90px" /></td>
	</tr>
	<tr>
		<td align="center" valign="middle"><a href="<?php echo $phpbb_url_path?>ucp.php" >Visita tu Panel de control</a></td>
	</tr>
	<tr>
		<td align="center" valign="middle"><?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>

<?php } else {  ?>

<form action="<?php echo $phpbb_url_path?>ucp.php?mode=login" target="_top" method="post" enctype="multipart/form-data">
	<table border="0" cellspacing="0" cellpadding="0" height="236px" width="221px" bgcolor="#88B8E6" class="texto">
		<tr>
			<td valign="top" height="20px" background="images/t-registrate_fondo.JPG"colspan="5"><img src="./images/t-registrate.jpg" /></td>
		</tr>
		<tr> 
			<td colspan="2" align="center"><img src="./invitado.png"/></td>
		</tr>
		<tr>
			<td align="right">Nombre de usuario:</td>
			<td align="center"><input name="username" type="text" size="15" /></td>
		</tr>
		<tr>
			<td align="right">Contrase&ntilde;a:</td>
			<td align="center"><input type="password" name="password"  size="15"  ></td>
		</tr>
		<tr>
			<td></td>
			<td align="right"><input type="checkbox" name="autologin" id="autologin" class="checkbox" value="ON"  /> Recordar</td>
		</tr>
		<tr>
			<td></td>
			<td align="center"><input type="hidden" name="redirect" value="../index.php"><input type="image" name="login" src="./images/login.png" /></td>	
		</tr>
		<tr>
			<td colspan="5" bgcolor="#E3EFFF" align="right"><b>¿No estas registrado? </b> <a href="#">Registrate aquí</a></td>
		</tr>
	</table>
</form>

<?php } ?> 
[/i]

Avatar de Usuario
mitch
Ex Staff
Mensajes: 4260
Registrado: 04 Sep 2005, 04:28
Género:

Re: Integrar login en web

#2

Mensaje por mitch »

pero te falta hacer el include al archivo de sesiones...
ThE KuKa escribió:
Ahora la otra forma y la mejor.

Metemos el include de sesiones.php antes que ningun codigo en nuestra pagina php que queremos darle sesion por decirlo asi, y colocamos el include de login.php en la parte que queramos de nuestro archivo PHP por ejemplo:

index.php

Código: Seleccionar todo

<?php include("sesiones.php"); ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>Eder Duran G. Saludos. </title> 
</head> 
 
<body> 
login de phpbb3 
<?php include("login.php"); ?> 
</body> 
</html>

Jota_sk
Observador/a
Mensajes: 35
Registrado: 15 May 2007, 22:32

Re: Integrar login en web

#3

Mensaje por Jota_sk »

si que hago el include de sesiones. Mira yo tengo la web de este manera: header.php que tengo toda la informacion de la cabecera (incluido el include de sesiones.php) y despues tengo el body.php con la informacion de el cuerpo de la pagina, y en el hago el include de login.php. Y despues tengo un index.php que hago un include de header.php y body.php. He probado a quitar el include del header y ponerlo en el login.php pero me hace exactamente lo mismo. Compruebalo tu mismo, pon un usuario arreu y veras como te envia para que te logees en el foro, cuando deveria de logearte y mostrarte en el mismo index tu avatar y un link para ir al paneld e control.

Saludos

Avatar de Usuario
mitch
Ex Staff
Mensajes: 4260
Registrado: 04 Sep 2005, 04:28
Género:

Re: Integrar login en web

#4

Mensaje por mitch »

Tambien vi en el tutorial, que en el login.php, habian unas lineas para poner los datos de la BD... ponlas haber que pasa.

Lo otro es que las rutas esten mal puestas :/ donde se te pide especificar el root_path

Jota_sk
Observador/a
Mensajes: 35
Registrado: 15 May 2007, 22:32

Re: Integrar login en web

#5

Mensaje por Jota_sk »

ya esta puesto el codigo ese de la BD, y sige igual. Y el path del foro esta bien, porque lo puse mal al principio y me dio error, y en el propio error puso el path. Alguna solucion?

Jota_sk
Observador/a
Mensajes: 35
Registrado: 15 May 2007, 22:32

Re: Integrar login en web

#6

Mensaje por Jota_sk »

Si me registro en el foro despues desde la web, me sale como que estoy registrado, me sale mi avatar y la opcion de ir al panel de control, y puedo cerrar sesion desde la web, el problema me viene cuando quiero logerme desde la web. Alguna sugerencia? Alguien tiene el codigo y le funciona? Me lo podria pasar para ver que cambia?

Bennit
Observador/a
Mensajes: 1
Registrado: 26 Feb 2009, 17:35

Re: Integrar login en web

#7

Mensaje por Bennit »

URL: http://foro.forosx.com" onclick="window.open(this.href);return false;
Versión phpBB: phpBB3 (3.0.3)
MODs Instalados: Ninguno
Plantilla(s) usada(s): subsilver
Servidor:
Actualización desde otra versión: No
Conversión desde otro sistema de foros: No

Hola a todos,

He estado siguiendo el hilo e intentando probar el método con vistas a coservar el login y password del foro en otro lugar externo. Mi problema es que el foro y el lugar donde quiero conservar los datos están en subdominios distintos (el foro está en http://foro.forosx.com y necesito mantener login y password al acceder a http://escorts.forosx.com/) Sin embargo, me surge un problema con el path:
Warning: include() [function.include]: open_basedir restriction in effect. File(/var/www/vhosts/forosx.com/subdomains/escorts/httpdocs:/tmpcommon.php) is not within the allowed path(s): (/var/www/vhosts/forosx.com/subdomains/escorts/httpdocs:/tmp) in /var/www/vhosts/forosx.com/subdomains/escorts/httpdocs/experiencias/sesiones.php on line 7


Como veis, no encuentra el common.php en el path y eso es porque en ese subdominio (/subdomains/escorts/) no es donde está instalado phpbb, sino en el de foro.forosx.com, pero el path no puedo cambiarlo y me exige que sea ese obligatoriamente...
En principio y con ese handicap, no se me ocurre otra solución que o bien trasladar el subdominio, o bien instalar phpbb en ambos sudominios (si es que eso puede funcionar) pero también me gustaría saber si existe otra alternativa, o si, simplemente, estoy cometiendo algún error. Acompaño también, por si es de utilidad, el fichero sesiones.php que me provoca el error:

Código: Seleccionar todo

    <?php

    define('IN_PHPBB', true); // se define que se va a usar phpbb.
    $phpbb_root_path = '/var/www/vhosts/forosx.com/subdomains/escorts/httpdocs:/tmp'; // 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.foro.forosx.com/phpbb2/'; // 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

    // iniciamos sesion
    $user->session_begin();
    $auth->acl($user->data);
    ?>
Muchas gracias

Cerrado

Volver a “Foros de Soporte 3.0.x”