Foros del Web » Programando para Internet » PHP »

Consulta...

Estas en el tema de Consulta... en el foro de PHP en Foros del Web. Buenos Dias, Como de costumbre una consulta con respecto a las sesiones, ya aprendi a manejarlas a traves de las FAQ's, pero no mencionan algo ...
  #1 (permalink)  
Antiguo 16/08/2006, 07:06
Avatar de Dalbin  
Fecha de Ingreso: abril-2005
Mensajes: 74
Antigüedad: 19 años, 7 meses
Puntos: 4
Consulta...

Buenos Dias,

Como de costumbre una consulta con respecto a las sesiones, ya aprendi a manejarlas a traves de las FAQ's, pero no mencionan algo muy importante y es lo que me tiene pensando y por esto acudo a alguien que me pueda ayudar...

Yo estoy creando un site con usuario y clave, ya guardo todos los datos del usuario como sesion cuando hace login, pero despues de eso no me los sigue leyendo, cuando paso a otra pagina no los lee y no encuentro la manera de que los lea sino de crear otra sesion, y asi sucecivamente en las otras paginas.

Como hago para que me lea las variables de la sesion en las otras paginas del site.

No se si me explique bien....
__________________
Lo más importante en la vida es estar con los ojos abiertos, y ver más alla de lo que te ofrecen
  #2 (permalink)  
Antiguo 16/08/2006, 07:12
Avatar de B**
B**
 
Fecha de Ingreso: enero-2006
Ubicación: Monterrey,Mexico
Mensajes: 952
Antigüedad: 18 años, 9 meses
Puntos: 3
Pues al parecer no estas pasando bien el SID.. como lo propagas por cookies o URL...??
Seria bueno que pusieras el codigo tambien..
__________________
-URL= Go PHP5.
-Age=22.
-Learning=PHP,J2EE,Struts,MAMBO,C++,JSON,AJAX,XHTML ,CSS.
  #3 (permalink)  
Antiguo 16/08/2006, 07:36
Avatar de Dalbin  
Fecha de Ingreso: abril-2005
Mensajes: 74
Antigüedad: 19 años, 7 meses
Puntos: 4
En si no se lo del SID ni como se maneja, lo que yo hago es esto.

este codigo lo tengo en el index, donde se pide el usuario y su clave, si el usuario es correcto que lo busque y guarde las variables, despues de esto cae en la pagina principal, pero de ay no puedo leer las variables que guarde

Entonces como hago para que en la pagina principal o en cualquier otra pagina del site, pueda leer los valores que guarde???

Código PHP:
$user "select * from usuarios where nick = '".$usuario."'";
$resultado_user mysql_query($user);

$num_resultados_user mysql_num_rows($resultado_user);

$fila_user mysql_fetch_array($resultado_user);
//$usuarioid = stripslashes($fila_user["usuarioid"]);
$nombre stripslashes($fila_user["nombre"]);
$nick stripslashes($fila_user["nick"]);
$pass stripslashes($fila_user["clave"]);
$tipo_usuario stripslashes($fila_user["tipo_usuario"]);
$status stripslashes($fila_user["status"]);

session_start();

$_SESSION["nombre"] = $nombre;
$_SESSION["nick"] = $nick;
$_SESSION["tipo_usuario"] = $tipo_usuario
__________________
Lo más importante en la vida es estar con los ojos abiertos, y ver más alla de lo que te ofrecen
  #4 (permalink)  
Antiguo 16/08/2006, 07:48
Avatar de B**
B**
 
Fecha de Ingreso: enero-2006
Ubicación: Monterrey,Mexico
Mensajes: 952
Antigüedad: 18 años, 9 meses
Puntos: 3
Pues tienes que saber sobre el SID, es lo mas importante.. por que si no se propaga.. pues no van a funcionar las sessiones... ve a donde tienes instalado PHP , y mira el php.ini...y busca esta linea :"session.use_cookies = 1".... si lo tienes en 1, es que estas por cookies, si esta en 0, es por URL...
Ahh y si puedes poner el codigo PHP donde se pierde la session...
__________________
-URL= Go PHP5.
-Age=22.
-Learning=PHP,J2EE,Struts,MAMBO,C++,JSON,AJAX,XHTML ,CSS.
  #5 (permalink)  
Antiguo 16/08/2006, 08:06
Avatar de Dalbin  
Fecha de Ingreso: abril-2005
Mensajes: 74
Antigüedad: 19 años, 7 meses
Puntos: 4
Ok.. ya lo acomode lo tenia asi, session.use_cookies = 10, lo puse en 1, pregunta cual es la mejor forma de utilizarlo???

Fijate yo en el index.php tengo solo el formulario con el usuario y la clave, de alli lo salto a la pagina login.php alli tenfo este codigo...

Código PHP:
<?
require_once("conexion.php");

if (!
$usuario){
?>
    <script language="javascript">
        alert('Debe introducir un usuario.');
        location.href="index.php";
    </script>
<?
}

if (!
$clave){
?>
    <script language="javascript">
        alert('Debe introducir una contraseña.');
        history.back();
    </script>
<?
}

$user "select * from usuarios where nick = '".$usuario."'";
$resultado_user mysql_query($user);

$num_resultados_user mysql_num_rows($resultado_user);

$fila_user mysql_fetch_array($resultado_user);
//$usuarioid = stripslashes($fila_user["usuarioid"]);
$nombre stripslashes($fila_user["nombre"]);
$nick stripslashes($fila_user["nick"]);
$pass stripslashes($fila_user["clave"]);
$tipo_usuario stripslashes($fila_user["tipo_usuario"]);
$status stripslashes($fila_user["status"]);

if (
$num_resultados_user == 0){
?>
    <script language="javascript">
        alert('No se encuentra ese Usuario en la Base de Datos.\nContacte al Administrador.');
        history.back();
    </script>
<?
}

if (
$usuario == $nick && $clave == $pass && $status == 0){
?>
    <script language="javascript">
        alert('Su cuenta se encuentra suspendida.\nContacte al Administrador.');
        history.back();
    </script>
<?
}

if (
$usuario == $nick && $clave != $pass && $status == 1){
?>
    <script language="javascript">
        alert('Ha introducido la contraseña incorrecta.\nVuelva a intentarlo.');
        history.back();
    </script>
<?
}

if (
$usuario == $nick && $clave == $pass && $status == 1){
    
session_start();

    
$_SESSION["nombre"] = $nombre;
    
$_SESSION["nick"] = $nick;
    
$_SESSION["tipo_usuario"] = $tipo_usuario;
?>
    <script language="javascript">
        location.href="principal.php?mes=<? echo date(n);?>&ano=<? echo date(Y);?>";
    </script>
<?
}


?>
alli me valida si el usuario esta o no, y que tipo de usuario es, eso es lo que guardo en la session.

y si el usuario es valido salta a la pagina principal, y alli hago la prueba, a ver si lee los valores, y lo hago asi

Código PHP:
<?
session_start
();

$nombre $_SESSION['nombre'];
            
echo 
$nombre;
?>
y no me muestra nada.... que estoy haciendo mal??? que me hace falta??? que puedo hacer???
__________________
Lo más importante en la vida es estar con los ojos abiertos, y ver más alla de lo que te ofrecen
  #6 (permalink)  
Antiguo 16/08/2006, 08:23
Avatar de B**
B**
 
Fecha de Ingreso: enero-2006
Ubicación: Monterrey,Mexico
Mensajes: 952
Antigüedad: 18 años, 9 meses
Puntos: 3
Busqueda

En cuanto a la mejor forma.. los 2 tienen pros y contras pero aqui en el foro por lo que leido, creo q es mejor por cookies...
Mmm... en cada pagina donde estas usando sessiones... imprime el session id y checa si es el mismo en las 2 paginas, si no es igual, no se esta propagando..
lo puedes imprimir asi:
Código PHP:
print session_id(); 
__________________
-URL= Go PHP5.
-Age=22.
-Learning=PHP,J2EE,Struts,MAMBO,C++,JSON,AJAX,XHTML ,CSS.
  #7 (permalink)  
Antiguo 16/08/2006, 11:46
Avatar de Dalbin  
Fecha de Ingreso: abril-2005
Mensajes: 74
Antigüedad: 19 años, 7 meses
Puntos: 4
No me imprime ningun tipo de datos... Me tiene desesperado estoy trancado por eso nada mas...
__________________
Lo más importante en la vida es estar con los ojos abiertos, y ver más alla de lo que te ofrecen
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 21:42.