SESSION变量缓慢更新php中的文本字段

时间:2015-03-05 09:01:02

标签: javascript php forms

我有一个表单,包含3个字段,当提交提交按钮时, 它会根据字段更改会话变量值,在这种情况下有3个变量。然后我将变量回显到字段上。

第一次提交时,它会正确存储值并正确显示在字段中,问题是,当我第二次提交时,值仍然相同。刷新页面后,字段中的值会更改。

这部分是我现在使用的代码。

<?php
session_start();?>
?>

<form name="form1" id="form1" action="">
<input type="text" name="acc1" value="<?php echo $_SESSION['acc_main']" />
<input type="text" name="acc2" value="<?php echo $_SESSION['acc_id']" />
<input type="text" name="acc3" value="<?php echo $_SESSION['acc_cat']" />
<input type="submit" name="submit">
</form>

<?php
if(isset($_POST['submit']) != '')
{
$_SESSION['acc_main'] = $_POST['acc1'];
$_SESSION['acc_id'] = $_POST['acc2'];
$_SESSION['acc_cat'] = $_POST['acc3'];
}
?>

刷新后(F5),然后更改了值。我希望它是,当我点击提交按钮时,它将更改为新值。

3 个答案:

答案 0 :(得分:1)

PHP代码:

 <?php
 if(isset($_POST['submit']) != '')
 {
   $_SESSION['acc_main'] = $_POST['acc1'];
   $_SESSION['acc_id'] = $_POST['acc2'];
   $_SESSION['acc_cat'] = $_POST['acc3'];

   echo '<script type="text/javascript">'
        , 'jsfunctionToPrintUpdatedValues();'
        , '</script>'
     ;
 }
?>

Javascript示例代码

function jsfunctionToPrintUpdatedValues()
{
     /* retrieve the updated session variables in javascript variables */

     var acc_main_js = <?php echo $_SESSION['acc_main']?>
     var acc_id_js = <?php echo $_SESSION['acc_id']?>
     var acc_cat_js = <?php echo $_SESSION['acc_cat']?>

     document.getElementById("main").value=acc_main_js;
     document.getElementById("id").value=acc_main_js;
     document.getElementById("cat").value=acc_main_js;
}

答案 1 :(得分:0)

输入字段中的

你必须像这样写 `

  

下面

`

<input type="text" name="acc1" value="<?php if(isset($_SESSION['acc_main'])) echo $_SESSION['acc_main']" />

答案 2 :(得分:-1)

在表单前使用if(isset($ _ POST ['submit'])!='')。将您的代码更改为:

 <?php
    session_start();
    if(isset($_POST['submit']) != '')
    {
    $_SESSION['acc_main'] = $_POST['acc1'];
    $_SESSION['acc_id'] = $_POST['acc2'];
    $_SESSION['acc_cat'] = $_POST['acc3'];
    ?>

    <form name="form1" id="form1" action="">
    <input type="text" name="acc1" value="<?php echo $_SESSION['acc_main']" />
    <input type="text" name="acc2" value="<?php echo $_SESSION['acc_id']" />
    <input type="text" name="acc3" value="<?php echo $_SESSION['acc_cat']" />
    <input type="submit" name="submit">
    </form>

    <?php
    }else{
    ?>

    <form name="form1" id="form1" action="">
    <input type="text" name="acc1" value="<?php echo $_SESSION['acc_main']" />
    <input type="text" name="acc2" value="<?php echo $_SESSION['acc_id']" />
    <input type="text" name="acc3" value="<?php echo $_SESSION['acc_cat']" />
    <input type="submit" name="submit">

    <?php } ?>