sesiones obtener new ejemplo datos caducidad actualizar php session

new - ¿Cómo puedo obtener ID de sesión en php y mostrarlo?



php init session (6)

Antes de obtener una identificación de sesión, debe iniciar una sesión y esto se hace mediante la función: session_start ().

Ahora que ha comenzado una sesión, puede obtener una identificación de sesión usando: session_id ().

/* A small piece of code for setting, displaying and destroying session in PHP */ <?php session_start(); $r=session_id(); /* SOME PIECE OF CODE TO AUTHENTICATE THE USER, MOSTLY SQL QUERY... */ /* now registering a session for an authenticated user */ $_SESSION[''username'']=$username; /* now displaying the session id..... */ echo "the session id id: ".$r; echo " and the session has been registered for: ".$_SESSION[''username'']; /* now destroying the session id */ if(isset($_SESSION[''username''])) { $_SESSION=array(); unset($_SESSION); session_destroy(); echo "session destroyed..."; } ?>

Necesito usar una identificación única como ID de sesión. ¿Cómo puedo obtener ID de sesión en php?


En el archivo PHP primero necesita registrar la sesión

<? session_start(); $_SESSION[''id''] = $userData[''user_id''];?>

Y en cada página de su aplicación php puede recuperar la identificación de la sesión

<? session_start() id = $_SESSION[''id'']; ?>


No te recomendaría que inicies sesión solo para obtener una identificación única. En cambio, use cosas como uniqid() porque está destinado a devolver una identificación única.

Sin embargo, si ya tiene una sesión, entonces, por supuesto, use session_id() para obtener su id de sesión, pero no confíe en eso, porque "identificador único" no es lo mismo que "identificador de sesión" en sentido común: por ejemplo , varias pestañas en la mayoría de los navegadores usarán el mismo proceso, por lo tanto, use el mismo identificador de sesión en el resultado, y, por lo tanto, las diferentes conexiones tendrán la misma identificación. Es su decisión sobre el comportamiento deseado. He mencionado esto solo para mostrar la diferencia entre el ID de sesión y el ID único.


Usted tiene la función uniqid para identificación única

Puede agregar prefijo para hacerlo más único

Fuente: http://pk1.php.net/uniqid


if(isset($_POST[''submit''])) { if(!empty($_POST[''login_username'']) && !empty($_POST[''login_password''])) { $uname = $_POST[''login_username'']; $pass = $_POST[''login_password'']; $res="SELECT count(*),uname,role FROM users WHERE uname=''$uname'' and password=''$pass'' "; $query=mysql_query($res)or die (mysql_error()); list($result,$uname,$role) = mysql_fetch_row($query); $_SESSION[''username''] = $uname; $_SESSION[''role''] = $role; if(isset($_SESSION[''username'']) && $_SESSION[''role'']=="admin") { if($result>0) { header (''Location:Dashboard.php''); } else { header (''Location:loginform.php''); } }


session_start(); echo session_id();