Foros del Web » Programando para Internet » PHP »

Ayuda con sesiones

Estas en el tema de Ayuda con sesiones en el foro de PHP en Foros del Web. Hola Estoy tratando de hacer un sistema de registro de usuarios, pero mientras planeaba el como hacerlo, me han surgido algunas dudas. En cuanto php ...
  #1 (permalink)  
Antiguo 09/03/2010, 12:09
 
Fecha de Ingreso: enero-2010
Mensajes: 88
Antigüedad: 14 años, 3 meses
Puntos: 2
Ayuda con sesiones

Hola
Estoy tratando de hacer un sistema de registro de usuarios, pero mientras planeaba el como hacerlo, me han surgido algunas dudas.

En cuanto php y mysql, no tengo mayor problema… mis dudas estan relacionadas con las sessiones, pues es primera vez que hago un sistema empleando estas.
Ahora. He estado viendo algunos codigos de por ahí… por ejemplo este:

$usuarios=mysql_query("SELECT * FROM users WHERE nick='$_POST[Nick]' and pass='$_POST[Pass]' ");
if($user_ok = mysql_fetch_array($usuarios))
session_register("usuario");
session_register("id");
$_SESSION[usuario] = $user_ok["nick"];
$_SESSION[id] = $user_ok["id"];

Veo que comprueba si los datos coinciden con alguna linea de la base de datos… Lo que me llama la atencion es “session_register("usuario")”… ¿Debo usar esta sentencia para cada campo que decida sacar de la base de datos, por ejemplo… SI ademas quisiera sacar el rango del usuario, tendria que hacer algo como:

session_register(“rango”);
$_SESSION[rango] = $user_ok["rango"];

Ademas, no entiendo eso de session_start()… se supone que debe ir en todas las paginas de mi web ¿no?... ¿Qué hace exactamente?... (He buscado en google, pero solo encontre un tutorial en ingles y esto del idioma no es lo mio) :3

De antemano muchas gracias.
  #2 (permalink)  
Antiguo 09/03/2010, 12:17
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 10 meses
Puntos: 1517
Respuesta: Ayuda con sesiones

La forma básica para crear sesiones es
Código PHP:
Ver original
  1. $_SESSION["nombreDeLaPrimeraSesion"] = "Valor de la sesión";
  2. $_SESSION["nombreDeLaSegundaSesion"] = "Valor de la segunda sesión";
Lo demás se explica en la página de PHP, te sugiero que leas un poco el manual y veas los comentarios de varios usuarios. Pero te puedo ir adelantando que session_register es obsoleto.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 09/03/2010, 12:24
 
Fecha de Ingreso: enero-2010
Mensajes: 88
Antigüedad: 14 años, 3 meses
Puntos: 2
Respuesta: Ayuda con sesiones

Cita:
Iniciado por abimaelrc Ver Mensaje
La forma básica para crear sesiones es
Código PHP:
Ver original
  1. $_SESSION["nombreDeLaPrimeraSesion"] = "Valor de la sesión";
  2. $_SESSION["nombreDeLaSegundaSesion"] = "Valor de la segunda sesión";
Lo demás se explica en la página de PHP, te sugiero que leas un poco el manual y veas los comentarios de varios usuarios. Pero te puedo ir adelantando que session_register es obsoleto.
Entonces

Para crear sesiones solo necesito el session_start() ¿no?...
Una vez ya creadas... No es necesario incluirlo en cada pagina... por lo tanto para restringir una pagina solo necesitaria algo como:

if(!SESSION["usuario"])
{
echo "No ha inciado sesion";
}
else
{
echo "contenido";
}

¿Estoy en lo correcto?

PD: Muchas gracias por tu rapida respuesta
  #4 (permalink)  
Antiguo 09/03/2010, 12:24
Avatar de eulloa  
Fecha de Ingreso: octubre-2007
Ubicación: Donde caiga la noche, si mi hijo me deja
Mensajes: 691
Antigüedad: 16 años, 5 meses
Puntos: 5
Respuesta: Ayuda con sesiones

session_register() está obsoleto y no se deben mezclar cuando usas $_SESSION.
session_start inicia o continua la sesion iniciada / existente. Más ayuda en el manual
  #5 (permalink)  
Antiguo 09/03/2010, 12:25
Avatar de eulloa  
Fecha de Ingreso: octubre-2007
Ubicación: Donde caiga la noche, si mi hijo me deja
Mensajes: 691
Antigüedad: 16 años, 5 meses
Puntos: 5
Respuesta: Ayuda con sesiones

Cita:
Iniciado por Myless Ver Mensaje
Entonces

Para crear sesiones solo necesito el session_start() ¿no?...
Una vez ya creadas... No es necesario incluirlo en cada pagina... por lo tanto para restringir una pagina solo necesitaria algo como:

if(!SESSION["usuario"])
{
echo "No ha inciado sesion";
}
else
{
echo "contenido";
}

¿Estoy en lo correcto?

PD: Muchas gracias por tu rapida respuesta
En realidad es mas como
Código PHP:
Ver original
  1. [COLOR="Red"]if(!$_SESSION["usuario"])[/COLOR]
  2. {
  3.       echo "No ha inciado sesion";
  4. }
  5. else
  6. {
  7.      echo "contenido";
  8. }
  #6 (permalink)  
Antiguo 09/03/2010, 12:34
 
Fecha de Ingreso: enero-2010
Mensajes: 88
Antigüedad: 14 años, 3 meses
Puntos: 2
Respuesta: Ayuda con sesiones

Ahhhhh

session_start();

Crea y mantiene... ya veo.
Muchas gracias a los dos por sus respuestas.
  #7 (permalink)  
Antiguo 09/03/2010, 13:23
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 10 meses
Puntos: 1517
Respuesta: Ayuda con sesiones

session_start debe estar en todas las páginas que vas a usar las sesiones.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos

Etiquetas: sesiones
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:16.