Поместите session_start()
в самом начале вашего скрипта, прежде, чем любой выход
<?php
session_start();
// if you automatically set SESSION['t'] to 0 when the page loads, it will never increment
// check if the SESSION exists, and if it doesn't, then we create it
if(!isset($_SESSION['t'])) {
$_SESSION['t'] = 0;
}
?>
<div id="test" class="test"></div>
<!-- it's recommended to load scripts at the end of the page -->
<script src="http://code.jquery.com/jquery.js"></script>
<script>
function update() {
// you had some formatting issues in here...
// shortcut: using +=1 will take the current value of $_SESSION['t'] and add 1
var ct = "<?php echo $_SESSION['t'] += 1 ?>";
<?php echo "Value: " . $_SESSION['t']; ?>;
$("#test").html(ct);
}
$(document).ready(function() {
setInterval('update()', 1000);
});
</script>
UPDATE: Это пример того, что будет делать то, что я думаю, что вы ищете. При загрузке страницы будет отображаться значение $_SESSION['t']
, а затем при каждом нажатии кнопки обновления увеличивать значение $_SESSION['t']
. Проверка ошибок отсутствует, это просто очень простой пример, чтобы показать вам, как это работает.
<?php
session_start();
if(!isset($_SESSION['t'])) {
$_SESSION['t'] = 0;
}
?>
<div id="test" class="test"></div>
<button type="button" id="update">Update</button>
<script src="http://code.jquery.com/jquery.js"></script>
<script>
$(document).ready(function() {
// create the ct varaible
var ct = <?php echo $_SESSION['t']; ?>;
// display the value in the #test div
$("#test").text(ct);
// when the update button is clicked, we call ajax.php
$("#update").click(function(){
$.post("ajax.php", function(response){
// display the returned value from ajax.php
$("#test").text(response);
});
});
});
</script>
ajax.php
<?php
session_start();
// increment the session by 1
$_SESSION['t'] += 1;
// return the result
echo $_SESSION['t'];
Из того, что я вижу, это, кажется, как будто вы пытаетесь скопировать и вставить код из различных источников. Я рекомендую садиться и учиться правильно программировать. –
Помните, что СЕССИЯ живет на сервере, а также PHP. Но Javascript работает в браузере. – RiggsFolly
No @Raahim. Я пытаюсь сохранить значение внутри переменной сеанса на одной странице и получить доступ к ней на другой странице. Выше - это простой код, который я написал, чтобы понять работу переменных сеанса. Я не понимаю, почему приведенный выше код не работает. Первая страница обновляет значение переменной сеанса каждые несколько минут. На второй странице не отображается обновленное значение, если страница не обновлена, и я не хочу обновлять страницу. Любая помощь приветствуется. Благодарю. –