Как обновить переменную сеанса

Я создаю многоступенчатую форму с помощью Ajax и хочу изменить отображаемый текст на основе значения поля формы. Я подумал, что хороший способ сделать это - использовать переменную сеанса. Как сообщить сеансу об обновлении нового значения поля? В настоящее время кажется, что сеанс сохраняет только начальное значение, но не обновляет его. Итак, если пользователь вводит "Джон" поскольку первое имя, а затем возвращается и меняет его на «Фрэнк», «Джон» - это сохраненное имя.

if (!isset($_SESSION)) {
session_start();
$_SESSION['formStarted'] = true;
$_SESSION['timestamp'] = date("M d Y H:i:s");
$_SESSION[$key] = $value;

<p>Your name begins with the letter <?php if ($_SESSION['name'] =='Frank') 
  {echo 'F';}?><p>

jQuery:

$("#form").validate({
   //...
   submitHandler: function(form) {

   //... 
   $(form).ajaxSubmit({               
     type: "POST",
     data: {
       name : $('#name').val(),
//...
     },
     dataType: 'json',
     url: '../ajaxtest.php',
     error: function() {alert("There was an error processing this page.");},
     success: 
       function(data) {
         $('#output1').html(data.message.join(' ')).show(500);
         $('#ouput1').append(data);
//...

ajaxtest.php:

session_start();

$expected = array( 
'name'=>'string', 
//...
);

//...

$return['message']=array();
if(!empty($_POST['name'])){
   $return['message'][] = '' . htmlentities($_POST['name'], ENT_QUOTES, 'UTF-8');
   } 
//...
echo json_encode($return);
7
задан Ken 28 May 2011 в 00:00
поделиться