Чтобы повторить переменную сеанса на той же странице, вы можете использовать именованный скрытый ввод и использовать значение из переменной $number
; то есть: value="<?php echo $number;?>"
, а затем с помощью <div>
в качестве элемента для отображения внутри.
page.php будет содержать:
<?php
echo $_POST['count'];
Это код, который будет загружен в вашем браузере, и с помощью JQuery:
<?php
session_start();
?>
<?php
$_SESSION['n'] = 3;
$number = $_SESSION['n'];
?>
<html>
<head>
<script src="//code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$('#submit-button').click(function (e){
e.preventDefault();
$.ajax({
type: 'POST',
url: 'page.php',
data: $("#theform").serialize(),
success: function(d){
$(".result").html(d);
}
});
});
});//end document ready
</script>
</head>
<body>
<div id="some_id">
<form id="theform">
<div>
<input type="hidden" id="count" name="count" value="<?php echo $number;?>" />
</div>
<div>
<button id="submit-button">Submit</button>
</div>
</form>
</div>
<div class="result"></div>
</body>
</html>
Определить 'не работает'. Какие ошибки вы получаете? Проверьте консоль JavaScript. Вероятно, вам нужен обработчик 'success', чтобы что-то сделать с результатами вызова AJAX - он не будет волшебным образом отображаться где-то на странице. – ceejayoz
Сколько отладки вы выполняли? Вы отлаживали свой вызов Ajax с помощью Firebug или сопоставимого инструмента, чтобы узнать, отправляет ли ваш POST _is_ данные в сценарий? –
'данные: {count: Php echo $ number; ?>} ' – lolbas