Как создать сеанс в PHP с рандомизированной строкой? - PullRequest
0 голосов
/ 03 октября 2009

Как сохранить состояние сеанса переменной на сайте?

Например:

Пользователь заходит на мой сайт, сгенерированная строка:

$string = 'uejsh37rhda283jde86541as'; 

(эта строка автоматически генерируется фидом xml при каждом обновлении страницы).

Теперь все работает, пока все в порядке. Проблема заключается в том, что когда пользователь нажимает на другую страницу сайта, канал xml создает новую случайную строку.

Я знаю, что здесь нужно использовать сеансы, но как именно?

if(isset($_SESSION[])): 
     ?
else: 
      ?
endif;

Обновленный код:

if(isset($_SESSION['session'])): 
      $string = $_SESSION['session'];
else: 
      $string = $sessionId;
      $_SESSION['session'] = $string;
endif;

echo $string;

Ответы [ 3 ]

5 голосов
/ 03 октября 2009

Прежде всего, вам нужно вызвать session_start () на всех страницах, которые обращаются к данным сеанса или манипулируют ими.

Вы можете сделать это так:

session_start();

if (!isset($_SESSION['string'])) {

  $string = makeString();
  $_SESSION['string'] = $string;

}
2 голосов
/ 03 октября 2009

Попробуйте это:

// call session_start() here if session handler is not started yet
if (isset($_SESSION['random-string'])) {
    $string = $_SESSION['random-string'];
} else {
    $string = generateRandomString();
    $_SESSION['random-string'] = $string;
}
1 голос
/ 03 октября 2009
if (isset($_SESSION['my_string'])) {
    $string = $_SESSION['my_string'];
}
else {
    $string = generate_random_string();
    $_SESSION['my_string'] = $string;
}
// now do something with $string
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...