Подтвердить что ты не робот

Как я могу получить идентификатор сеанса в php и показать его?

Мне нужно использовать уникальный идентификатор, такой как идентификатор сеанса. Как получить идентификатор сеанса в php?

4b9b3361

Ответ 1

session_start();    
echo session_id();

Ответ 2

Я бы не рекомендовал вам запускать сеанс, чтобы получить уникальный идентификатор. Вместо этого используйте uniqid(), поскольку он предназначен для возврата уникального идентификатора.

Однако, если у вас уже есть сеанс, то, конечно, используйте session_id(), чтобы получить свой идентификатор сеанса, но не полагайтесь на этом, потому что "уникальный идентификатор" не такой же, как "идентификатор сеанса" в общем смысле: например, несколько вкладок в большинстве браузеров будут использовать один и тот же процесс, таким образом, использовать один и тот же идентификатор сеанса в результате - и, следовательно, разные соединения будут имеют одинаковый идентификатор. Это ваше решение о желаемом поведении, я упомянул об этом просто, чтобы показать разницу между идентификатором сеанса и уникальным идентификатором.

Ответ 3

Прежде чем получить идентификатор сеанса, вам нужно запустить сеанс, и это делается с помощью: session_start().

Теперь, когда вы запустили сеанс, вы можете получить идентификатор сеанса, используя: 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...";
}
?>

Ответ 4

У вас есть uniqid функция для уникального id

Вы можете добавить префикс, чтобы сделать его более уникальным

Источник: http://pk1.php.net/uniqid

Ответ 5

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');
      }
 }

Ответ 6

Сначала в файле PHP вам необходимо зарегистрировать сеанс

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

И на каждой странице вашего php-приложения вы можете получить идентификатор сеанса

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