Advertisement
rfv123

Q35271252 Session and Session Cookie Control

Feb 8th, 2016
196
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 4.33 KB | None | 0 0
  1. <?php // http://stackoverflow.com/questions/35271252/session-php-rand-other-values
  2.  
  3. // ----------------------------------------------------------------------------------------------------
  4. // Index.php
  5. // ---------
  6.  
  7. <?php // INDX.PHP  http://stackoverflow.com/questions/35271252/session-php-rand-other-values
  8.  
  9.  
  10. // get session id...
  11. $cookieId = '++ not set ++';
  12. $sessionId = '';
  13. if (isset($_COOKIE[session_name()])) {
  14.     $cookieId = session_name();
  15.     $sessionId = $_COOKIE[session_name()];
  16. }
  17.  
  18. if (isset($_GET['cookie']) || isset($_GET['session'])) {
  19.     session_start();
  20.     $params = session_get_cookie_params();
  21.     setcookie(session_name(), '', time() - 7000,
  22.               $params['path'],
  23.               $params['domain'],
  24.               $params['secure'],
  25.               isset($params['httponly']));    
  26.     session_destroy();
  27.     session_write_close();    echo '<p>', 'session destroyed...', '</p>';
  28.     exit;
  29. }
  30.  
  31. /* remove the space to activate this statement :  ==> * /
  32. echo '<pre>';
  33. var_dump('++++++++ INDEX START ++++++',
  34.          __FILE__.__LINE__,
  35.          'start...',
  36.          'cookie', $_COOKIE,
  37.          'session', $_SESSION,
  38.          'get', $_GET,
  39.          '-------------------');
  40. echo '</pre>';
  41.  /**/
  42.  
  43. if (!isset($_SESSION)) {  
  44.     session_start();
  45.     echo '<p>', 'start file: INDEX.php :', __LINE__,'</p>';
  46.  
  47.     if (isset($_COOKIE[session_name()])) {
  48.         $cookieId = session_name();
  49.         $sessionId = $_COOKIE[session_name()];
  50.     }
  51.     echo '<p>', 'session started: cookie: ', $cookieId, ',  Session id: ', $sessionId,  '</p>';
  52. }
  53. else {
  54.     echo '<p>', 'start file: INDEX.php :', __LINE__,'</p>';
  55.     echo '<p>', 'session already started: cookie: ', $cookieId, ',  Session id: ', $sessionId,  '</p>';
  56. }
  57.  
  58.  
  59. // unset tok
  60. if (isset($_GET['reset']) || isset($_GET['tok'])) {
  61.     echo '<p>';
  62.     echo '$_SESSION[\'tok\'] will be unset!';
  63.     echo '</p>';
  64.     unset($_SESSION['tok']);
  65.     unset($_SESSION['tok_count']);
  66. }
  67.  
  68.  
  69. echo '<p><strong>Refresh the page to have the TOK count increase...</strong> Note: must be no parameters in url</p>';
  70.  
  71. if (isset($_SESSION['tok'])) {
  72.      echo '<p>', ': Tok is already set - value: '. $_SESSION['tok'], ' count: '. $_SESSION['tok_count'], '</p>';
  73. }
  74. else {
  75.     echo '<p>', ': Tok is not set yet.', '</p>';
  76. }
  77.  
  78. require_once __DIR__ .'/token.php';
  79.  
  80. echo '<p>', 'end file: INDEX.php : ', __LINE__,'</p>';
  81.  
  82. // ----------------------------------------------------------------------------------------------------
  83. // Token.php
  84. // ---------
  85.  
  86. <?php // TOKEN.PHP  http://stackoverflow.com/questions/35271252/session-php-rand-other-values
  87.  
  88. /* remove the space to activate this statement :  ==> * /
  89. echo '<pre>';
  90. var_dump('++++++++ TOKEN START ++++++',
  91.          __FILE__.__LINE__,
  92.          'start...',
  93.          'cookie', $_COOKIE,
  94.          'session', $_SESSION,
  95.          'get', $_GET,
  96.          '-------------------');
  97. echo '</pre>';
  98.  /**/
  99.  
  100. // get session id from cookie...
  101. $cookieId = '++ not set ++';
  102. $sessionId = '';
  103. if (isset($_COOKIE[session_name()])) {
  104.     $cookieId = session_name();
  105.     $sessionId = $_COOKIE[session_name()];
  106. }
  107.  
  108.  
  109. if (!isset($_SESSION)) {  
  110.     session_start();
  111.     echo '<p>', 'start file: TOKEN.php :', __LINE__,'</p>';
  112.  
  113.     if (isset($_COOKIE[session_name()])) {
  114.         $cookieId = session_name();
  115.         $sessionId = $_COOKIE[session_name()];
  116.     }
  117.     echo '<p>', 'session started: cookie: ', $cookieId, ',  Session id: ', $sessionId,  '</p>';
  118. }
  119. else {
  120.     echo '<p>', 'start file: TOKEN.php :', __LINE__,'</p>';
  121.     echo '<p>', 'session already started: cookie: ', $cookieId, ',  Session id: ', $sessionId,  '</p>';
  122. }
  123.  
  124. if (isset($_SESSION['tok'])) {
  125.      echo '<p>', ': Tok is already set - value: '. $_SESSION['tok'], '</p>';
  126. }
  127. else {
  128.     echo '<p>', ': Tok is not set.', '</p>';
  129. }
  130.  
  131. echo '<p>', 'set or adjust tok: TOKEN.php ...', __LINE__,'</p>';
  132. if (!isset($_SESSION['tok'])) {
  133.     $_SESSION['tok'] = rand(100, 999);
  134.     $_SESSION['tok_count'] = 0;
  135.     echo '<p>', ': New Tok:  value: '. $_SESSION['tok'], ' count: '. $_SESSION['tok_count'], '</p>';
  136. }
  137. else {
  138.     $_SESSION['tok_count'] = $_SESSION['tok_count'] + 1;
  139.      echo '<p>', ': Tok is incremented:  value: '. $_SESSION['tok'],  ' count: '. $_SESSION['tok_count'], '</p>';
  140. }
  141.  
  142. echo '<p>', 'end file: ', 'TOKEN.php  ', __LINE__,'</p>';
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement