PHP: как получить время входа в сессию и выхода из страницы

0

Я пытаюсь создать страницу для небольшого эксперимента для моей диссертации. Я должен измерять, когда человек открывает экспериментальную страницу и закрывает ее.

Прочитав некоторые другие вопросы, я придумал, чтобы получить время, когда начинается сеанс, и когда человек нажимает кнопку, чтобы перейти на другую страницу в форме. Как это:

<?php
session_start();

$_SESSION['timeEnt']= date('H:i:s');
?>

<!DOCTYPE html>
<html>

<form method="post" action="name.php">
<input type="hidden" id="date" name="timeExt" value="" />
<input type="submit" value="Submit!" onclick="document.getElementById('date').value = new Date(<?php date('H:i:s')); ?>" />
</form>

</html>

К сожалению, позже, когда я получаю результаты, я вижу, что значение времени в timeEnt берется с сервера и в timeExt с ПК. Другая проблема заключается в том, что timeEnt показывает нормальный формат: HH: MM: SS; в то время как timeExt показывает, например, Sat Mar 07 2015 HH: MM: SS GMT + 0100

Есть ли способ получить как с сервера, так и в том же формате (ЧЧ: ММ: СС)?

благодаря

Теги:
forms
session
time

2 ответа

0
Лучший ответ

Я бы использовал интерфейс или бэкэнд исключительно, чтобы избежать любых проблем с конверсией:

<?php
$sTimeEnt = date('H:i:s');
?>
<!DOCTYPE html>
<html>

<form method="post" action="name.php">
<input type="hidden" id="date" name="timeEnt" value="<?php echo $sTimeEnt; ?>" />
<input type="submit" value="Submit!" />
</form>

</html>

И в name.php

<?php
$aPost    = $_POST;
$sTimeEnt = $aPost[ 'timeEnt' ];
$sTimeExt = date('H:i:s');

// Compare to your liking the two.
?>
  • 0
    Благодарю. Работает именно так, как мне нужно.
0

Помните, что PHP работает на SERVER. Таким образом, невозможно получить пользовательское время datetime.

Чтобы получить пользователя datetime. Вы должны сделать это с помощью javascript:

var currentTime = new Date()

document.write(currentTime.toString());

Ещё вопросы

Сообщество Overcoder
Наверх
Меню