Foros del Web » Programando para Internet » PHP »

duda con un include

Estas en el tema de duda con un include en el foro de PHP en Foros del Web. buenas con todos, veran, tengo este archivo al ke llamo control.php y lo incluyo en todas mis paginas, Código PHP: <? session_start (); echo  'Bienvenido<br>&nbsp;&nbsp;<a href=perfil.php?id=' ...
  #1 (permalink)  
Antiguo 13/07/2005, 16:27
Avatar de ZydRick  
Fecha de Ingreso: febrero-2005
Ubicación: Lima
Mensajes: 750
Antigüedad: 19 años, 2 meses
Puntos: 4
duda con un include

buenas con todos, veran, tengo este archivo al ke llamo control.php y lo incluyo en todas mis paginas,

Código PHP:
<?
session_start
();
echo 
'Bienvenido<br>&nbsp;&nbsp;<a href=perfil.php?id='.$_SESSION[idusuario].'><b>'.$_SESSION[usuario].'</b></a>';
if(
$_SESSION[level] == 1
{
echo 
'<br>&nbsp;&nbsp;<a class=link4 href=admin.php><b>Administrar</b></a>&nbsp;<br>
&nbsp;&nbsp;<a class=link4 href=editaruser.php?id='
.$_SESSION[idusuario].'><b>Editar perfil</b></a>'
}
else {
echo 
'<br>&nbsp;&nbsp;<a class=link4 href=editaruser.php?id='.$_SESSION[idusuario].'><b>Editar perfil</b></a>'
}
?>
pero lo ke yo kiero es ke solo la vean los ke esten logueados en mi pagina, como le hago?
  #2 (permalink)  
Antiguo 13/07/2005, 16:40
 
Fecha de Ingreso: octubre-2004
Mensajes: 751
Antigüedad: 19 años, 6 meses
Puntos: 4
Una posibilidad es que cuando el usuario se loguee crees una variable de sesion como $_SESSION['logueado'] i le des de valor "si".

Entonces en el código pones:

Código PHP:
<? 
session_start
(); 
if (
$_SESSION['logueado']=="si"){
   echo 
'Bienvenido<br>&nbsp;&nbsp;<a href=perfil.php?id='.$_SESSION
   idusuario
].'><b>'.$_SESSION[usuario].'</b></a>'
   if(
$_SESSION[level] == 1
   { 
   echo 
'<br>&nbsp;&nbsp;<a class=link4
   href=admin.php><b>Administrar</b></a>&nbsp;<br> 
   &nbsp;&nbsp;<a class=link4 href=editaruser.php?id='
.$_SESSION
   idusuario
].'><b>Editar perfil</b></a>'
   }
   else { 
   echo 
'<br>&nbsp;&nbsp;<a class=link4 href=editaruser.php?id='.$_SESSION
   idusuario
].'><b>Editar perfil</b></a>'
   } 
}else{
   echo 
"Usuario no logueado.";//y pones el formulario para loguearse 
}
?>
Espero que te sirva!
__________________
sergiold
  #3 (permalink)  
Antiguo 13/07/2005, 16:45
 
Fecha de Ingreso: octubre-2004
Mensajes: 751
Antigüedad: 19 años, 6 meses
Puntos: 4
Se me acaba de ocurrir...
Sería más fácil (siguiendo con la idea de crear la variable

$_SESSION['logueado']="si";

Código PHP:
<? 
session_start
(); 
if (
$_SESSION['logueado']=="si"){ 
   include(
"control.php");
}else{
   echo 
"Usuario no logueado.";//y lo que sea...
}
__________________
sergiold
  #4 (permalink)  
Antiguo 13/07/2005, 17:07
Avatar de ZydRick  
Fecha de Ingreso: febrero-2005
Ubicación: Lima
Mensajes: 750
Antigüedad: 19 años, 2 meses
Puntos: 4
lo he hecho asi pero sino esta logueado me muestra el enlace de editar perfil es ke yo puse un campo llamado level en el ke level=1 es el admin y leve=2 son los registrados, moderadores y tal ahi es donde kiero arreglar y no tengo ni puñetera idea, gracias por tu ayuda sergiold :)
  #5 (permalink)  
Antiguo 13/07/2005, 17:17
 
Fecha de Ingreso: octubre-2004
Mensajes: 751
Antigüedad: 19 años, 6 meses
Puntos: 4
No entiendo bien, a ver tu entras en la página principal y te logueas a través de un formulario con usuario y contraseña, lo envias a la página de logueo donde verificas la contraseña y todo lo que tengas que hacer y a partir de allí quieres que se vea control.php

Es asi?¿

Entonces si es así lo que tienes que hacer es en la página de logueo donde verificas la contraseña crear la variable $_SESSION['logueado']="si"; Entonces a partir de este momento puedes saber en todo momento quien está logueado y quien no porque el que lo este tendrá la variable que le has creado.

Si todo hasta aquí esta correcto creo que deberia funcionar tanto el primer código como el segundo. Si usas el primero solo tienes que modificar control.php si usas el segundo tienes que modificar el resto de páginas.

Sinceramente ahora estoy un poco perdido porque no entiendo que es lo que no funciona!

A ver si puedes lograr arreglarlo, sino vuelve a preguntar y di exactamente lo que estas haciendo.

Saludos,
__________________
sergiold
  #6 (permalink)  
Antiguo 13/07/2005, 17:19
Avatar de ZydRick  
Fecha de Ingreso: febrero-2005
Ubicación: Lima
Mensajes: 750
Antigüedad: 19 años, 2 meses
Puntos: 4
finalmente lo he conseguido, no se si sera la mejor manera pero funciona bien aki esta el codigo:
Código PHP:
<?
session_start
();
if(!empty(
$_SESSION["usuario"])){
echo 
'Bienvenido<br>&nbsp;&nbsp;<a href=perfil.php?id='.$_SESSION[idusuario].'><b>'.$_SESSION[usuario].'</b></a><br>
&nbsp;&nbsp;<a class=link4 href=editaruser.php?id='
.$_SESSION[idusuario].'><b>Editar perfil</b></a>';
}
if(
$_SESSION[level] == 1
{
echo 
'<br>&nbsp;&nbsp;<a class=link4 href=admin.php><b>Administrar</b></a>&nbsp;<br>';
}
?>
Un saludo :)
  #7 (permalink)  
Antiguo 13/07/2005, 17:24
 
Fecha de Ingreso: octubre-2004
Mensajes: 751
Antigüedad: 19 años, 6 meses
Puntos: 4
Así esta bien... jeje creo que incluso mejor porque te ahorras la variable que yo te decía

Saludos!
__________________
sergiold
  #8 (permalink)  
Antiguo 13/07/2005, 17:36
Avatar de dopon  
Fecha de Ingreso: julio-2005
Ubicación: Cucuta / Colombia
Mensajes: 493
Antigüedad: 18 años, 9 meses
Puntos: 1
exactamente s una forma bastante corta y efectiva es como un isset tambien reduce costes de tiempo y memeoria :P sin necesidad de usar variables de bandera
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 16:18.