Foros del Web » Programando para Internet » PHP »

.php sólo visible para registrados

Estas en el tema de .php sólo visible para registrados en el foro de PHP en Foros del Web. Hola a todos. Acabo de instalar un inicio de sesión en mi web, que usa la base de datos del foro phpbb3 instalado. Son prácticamente ...
  #1 (permalink)  
Antiguo 28/05/2009, 10:17
 
Fecha de Ingreso: marzo-2009
Mensajes: 44
Antigüedad: 15 años, 1 mes
Puntos: 0
.php sólo visible para registrados

Hola a todos.

Acabo de instalar un inicio de sesión en mi web, que usa la base de datos del foro phpbb3 instalado. Son prácticamente enlaces al login del foro.

No puedo poner el link porque no tengo 30 mensajes. Por eso os dejo el código directamente:

index.php
Código PHP:
<?php
// Antes de este include no habrá ningun codigo 
include("sesiones_foro.php");
?> 

<?
if($user->data['is_registered']) // Si el usuario ya está registrado...
{
$avvy "SELECT * FROM phpbb_users WHERE user_id =" $user->data['user_id'];
$result mysql_query($avvy) or die (mysql_error());

while(
$row mysql_fetch_array($result))
{
$username $row['username'];
$link $row['user_avatar'];
$width $row['user_avatar_width'];
$height $row['user_avatar_height'];
}

echo 
"<div id='li'>";
echo 
"<h2 class='categoriaUsuario'>";echo $username;echo "</h2>";
echo 
"<div style='clear:both;'><img src='".$phpbb_url_path."/download/file.php?avatar=".$link."' border='0' width='".$width."' height='".$height."' alt='Avatar' /></div>";
echo 
"<table>";
echo 
"<tr><td><a href='".$phpbb_url_path."ucp.php'>Ir a Panel de Control</a></td></tr>";
echo 
"<tr><td><a href='tudominio/foro' target='_self'>Ir al foro</a></td></tr>";
echo 
"<tr><td><a href=" $phpbb_url_path 'ucp.php?mode=logout' '&sid=' $user->data['session_id'] . " target='_self'><font color='red'>Logout</font></a></td></tr>";
echo 
"</table>";
echo 
"</div>";
}

else{
echo 
"<div id='li'>"// principio del formulario de logeo en el foro -->
echo "<h2 class='categoria'>Formulario Login</h2>";
?>

<table>
<form action="<?php echo $phpbb_url_path?>ucp.php?mode=login" target="_top" method="post" enctype="multipart/form-data">

<tr>
<td>Usuario Foro:</td>
<td><input type="text" id="s" name="username" value="" size="16" class="text" /></td>
</tr>

<tr>
<td>Password:</td>
<td><input type="password" id="p" name="password" value="" size="16" maxlength="16" class="text"></td>
</tr>

</table>

<a href="tudominio./foro/ucp.php?mode=register">Registrarse en el foro</a>
<input id="x" name="login" type="submit" value="Login" class="button" />

<input type="hidden" name="autologin" id="autologin" class="checkbox" value="ON" />
<input type="hidden" name="redirect" value="/">

</form>

</div><!-- fin del formulario de logeo en el foro -->


<?
}
?>
<!-- Todo el codigo restante de tu index. -->
sesiones_foro.php
Código PHP:
<?php
define
('IN_PHPBB'true); // se define que se va a usar phpbb. 

$site_root_path="";
$phpbb_root_path $_SERVER['DOCUMENT_ROOT'] .'/foro/';
$phpbb_url_path '.tudominio/foro/'// la url hacia tu phpbb3
$phpEx substr(strrchr(__FILE__'.'), 1); // tipo de extension

include($phpbb_root_path 'common.' $phpEx);
include(
$phpbb_root_path 'config.' $phpEx);

$user->session_begin();
$auth->acl($user->data);
?>
Los enlaces de dentro del código están "censurados" xD

La Fuente es de otra web...xD (por si lo preguntan)


Lo que quiero hacer esque sólo los usuarios logueados puedan entrar en cierta parte de la web, y a los que no les salga el típico "usted no está registrado...blablabla"

Tengo un nivel de PHP bastante bajo, pero algo entiendo xD
  #2 (permalink)  
Antiguo 28/05/2009, 12:17
Usuario no validado
 
Fecha de Ingreso: octubre-2008
Ubicación: BRUSELAS
Mensajes: 211
Antigüedad: 15 años, 5 meses
Puntos: 3
Respuesta: .php sólo visible para registrados

pues es facil:
con una simple condicion puedes hacerlo

if(isset($_SESSION['variable'])){
// muestras la pagina para los registrados
}
echo {
// muestras el mensaje para los que no lo estan
}
  #3 (permalink)  
Antiguo 28/05/2009, 12:52
 
Fecha de Ingreso: marzo-2009
Mensajes: 44
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: .php sólo visible para registrados

-En la variable que dices: "['variable']" lo pongo así sin más o pongo "['is_registered]".

O ninguna de las dos. (lo siento, soy bastante novato)

-¿No sería else en vez de echo?

Lo demás lo entiendo jeje

Muchísimas gracias, probaré lo que se me ocurra, mañana te confirmo si va ^^

Mil gracias!!

EDIT:
LO CONSEGUÍIIIIIIIIIIIIIIII!!!

He metido un includes y tal pero lo conseguí, muchas gracias!!

Última edición por Nastrano; 28/05/2009 a las 15:10 Razón: CONSEGUIDO
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:25.